自然数指的是什么(自然数指的是什么数字)
13572023-11-30
大家好,今天给各位分享TCP协议中的端口具体指的是什么的一些知识,其中也会对不建议重用端口号进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!
本文目录
很多读者听到端口号,会下意识联系到进程号,甚至将两者完全划等号,其实这是一个误区!
进程号是操作系统给每一个运行的程序分配的一个独一无二的ProcessID,需要满足唯一性(Uniqueness)。
操作系统TCP/IP协议栈的眼里,UDP通信、TCP通信是一个个独立的Socket。每一个Socket同样需要独一无二的SocketID,也可以表达为SessionID,同样需要满足唯一性(Uniqueness)。
SocketID=Hash(源IP,源端口,传输协议类型,目的IP,目的端口)
Hash函数的输入量有五个,可以称之为五元组。这个Hash函数的特点是,只要有任何一元不同,其产生的SocketID就是不同的。
举个例子
ID1=Hash(1.1.1.1,1111,TCP,2.2.2.2,443)
ID2=Hash(1.1.1.1,1111,TCP,2.2.2.2,445)
这两个ID是不同的,因为下划线的部分不同。
值得惊讶的是,IP=1.1.1.1的主机却同时使用源端口=1111来访问服务器的https(443),服务器的SMB(445)。在主机1.1.1.1上其实同时运行两个程序,分别对应不同的进程号,但却同时在使用端口号1111。
所以,端口号不等同于进程号,这种端口可以在不同程序中重复使用的技术,称之为端口重用(PortReuse)技术。
更通俗的解释,请继续阅读。。。
协议号
由于IP妈妈桑服务的老板很多,为了避免认错人,IP妈妈桑给各位老板分配了一个暗号,为了提供差别化服务,比如:
TCP老板6
UDP老板17
GRE老板47
ESP老板50
AH老板51
EIGRP老板88
OSPF老板89
PIM老板103
IPX老板111
VRRP老板112
L2TP老板115
lSIS老板124
如果各位对这些老板很面熟,肯定是经常逛场子的!
以上都是外人,其它场子的妈妈桑也来玩:
IPv4妈妈桑4
IPv6妈妈桑41
还有自家兄弟也来玩:
ICMP弟弟1
IGMP弟弟2
端口号
有两位老板,一个TCP老板,另一个是UDP老板,生意做的风生水起,马仔众多,有最多65535个马仔,老板记不住,于是给每个马仔做了一个编号(端口号),这里面有很多知名马仔,比如:
21FTP
22SSH
23Telnet
25SMTP
53DNS
67DHCP
68DHCP
69TFTP
80HTTP
443SSL
445SMB
两位老板经常带自己的马仔来场子里玩,对于IP妈妈桑来说,根本不care这些马仔是谁,只关心是TCP老板、或UDP老板带来的即可,因为最终还是需要老板们埋单,对于马仔来说,马仔也不关心妈妈桑是谁,跟对老板就好。
IP的协议号4,则意味着IP头的负载是IP,这个就是IPIPtunnel,最简单的一种隧道封装,外部是公网IP,内部是私网IP,实现私网穿越公网,缺点单靠外层IP头(没有端口号)无法穿越PAT设备。
如果协议号是41,则用IPv4来隧道化IPv6,实现IPv6流量跨IPv4网络传输。
而协议号47就更强大了,增强版的可以穿越NAT,可以提供GRE隧道,可以隧道化单播、组播、广播,如果他说自己隧道化能力老二,没人敢说老大!
知道为何GRE能力如此强劲?难道吃了伟哥?
No!GRE协议头里竟然也有协议号,凡是IP协议号无法覆盖的,GRE完全可以覆盖。
虚拟路由器即VirtualRouter,是指在软、硬件层实现物理路由器的功能仿真,属于一种逻辑设备。
每个VR应该具有逻辑独立的路由表和转发表,这样就使不同VPN间的地址空间可以重用,并保证了VPN内部路由和转发的隔离性。
虚拟路由器已经得到了实际的应用,Nortel的Accelar1000路由交换机就使用虚拟路由端口在VLANs之间路由,虚拟路由器端口能够配置每个VLAN,在IP子网或VLANs之间实现路由。Accelar1000路由交换机支持虚拟路由器端口,且不降低其性能。
关于本次TCP协议中的端口具体指的是什么和不建议重用端口号的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。