你知道PORT吗?

来源:互联网 发布:潍坊知行学校 编辑:程序博客网 时间:2024/04/29 15:45


 

在TCP协议中,有端口(PORT)的概念,很多人都不知道端口到底是什么。之前介绍过物理地址,也就是网卡地址,做个不恰当的比喻,物理地址(MAC)地址,相当于身份证(唯一),家庭地址是几幢几单元相当于IP地址,那么如果送快递的话,还是不能够得知你的具体地址,无法将快递送达,因为一幢楼的一个单元里的住户很多,只有知道你是哪层楼哪个房间的住户,才能送达,比如405室,那么405就相当于TCP协议的端口了。

ip能锁定一台物理机器,对应着一张网卡,外界发来的数据包网卡都会接收。但是问题来了,网卡给程序提供了接口,你监听一下我,要是有消息来了,我就转发给你。这样应用程序就能收到数据了。但是问题来了,程序A和程序B都需要监听网卡接发数据,网卡说那我把接到的数据都发给你两,你们自己看着办吧。好,小A小B都接受了。但是又来了CDEF......,不行了,每个包都被发到了所有应用程序,每个应用程序都累得不行,最终垮了。

好,那网卡说我给你们加个表示吧,我们之间可以用一个号码来作为标识,我和小A之间就用1来标识,如果外界发给1号标识的数据我就转发给你,你监听我的时候得告诉我你监听的时1,我就转发1的数据包给你。好了其他的BCD...都自己弄一个标识号,只要不重复就行。这样大家都省事了。

最后设计到安全,一个标识号只能被一个应用程序监听,因为如果小A程序和小B同时监听一个标识号号,那就坏了,我传的数据都被AB接到,这样数据安全性就没办法保证了。

在应用层,多个应用层程序同时运行,如A,B,C,D。

举个例子,A应用程序高层协议用的是FTP,如果接收到以太网数据E后,MAC地址与IP地址都验证,那么如果没有端口,A,B,C,D 四个应用层程序会监听E数据。如果加上端口,而且E的端口是FTP的端口,那么只有A会接收此数据。

常用端口如下:


版权所有权归卿萃科技 杭州FPGA 事业部,转载请注明出处  

作者:杭州卿萃科技ALIFPGA  

原文地址:杭州卿萃科技FPGA极客空间 微信公众号


  

扫描二维码关注卿萃科技FPGA极客空间

 


 

原创粉丝点击