免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1851 | 回复: 0
打印 上一主题 下一主题

TCP/IP协议号和端口 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-09-07 22:32 |只看该作者 |倒序浏览
    TCP/IP协议号和端口类似于PC机的并口或串口,也可以将其想象成交通中的交叉路口。程序员使用TCP/IP协议号和端口的目的是在TCP/IP的高层(传输层和应用层)为用户数据包选择路径,只不过协议号用来识别传输层的协议,端口用来识别应用层的程序进程。
1  TCP/IP协议号
  TCP/IP协议号是由网络专家定义的一个8位数值。当IP数据报到达正确的IP地址时,网络互连层必须将数据报传送到传输层,而传输层的协议不是唯一的,它至少包含两个主要协议TCP和UDP。为了确定哪个协议接收下层的数据报(或上层的用户数据包),必须使用TCP/IP协议号。为此,IP数据包的包头专门为协议号开辟了一个“窗口”——协议域。
协议号的工作方式是:


  • 在信息发送方,协议号用来指明使用哪一种协议对用户数据包进行封装。例如协议号为6时,网络软件将使用TCP格式对数据包中的数据进行封装。

  • 在信息接收方,网络软件通过检查该协议号,将IP数据报传递给与这个协议号相应的协议。例如协议号是17,就将数据报传递给UDP协议。

常见的协议号见下面的表1:
协议名
协议号
基  本  描  述
IP
0
互连网协议
ICMP
1
互连网消息协议
GGP
3
网关——网关协议
TCP
6
传输控制协议
EGP
8
外部网关协议
UDP
17
用户数据报协议
Xns_IDP
22
Xerox NS IDP
rdp
27
可靠数据流协议
rvd
66
MIT远程虚拟磁盘
表1:常见的TCP/IP协议号
2  TCP/IP端口号
  网络互连层的IP协议将数据传送到传输层后,传输协议要将数据传递给正确的应用进程。为了识别是哪一个进程,就需要使用端口号。端口号是用来区分和标识应用进程的一个16位值,它也在IP数据报的包头中指定。包括两个端口号:源端口号——代表了发送数据的进程;目的端口号——代表了接收数据的进程。每个应用程序,不管是服务器还是客户端,都有一个唯一的端口号。尤其是专门为完成特定任务的网络程序(像FTP、Telnet和E-mail等这种广泛使用的应用程序)要使用由Internet权威机构制定的端口号——即众所周知的端口号见表2。
端口号
关键字
基  本  描  述
7
Echo
回波
9
Discard
丢弃
11
Users
活动的用户
13
Daytime
日期
15
Netstat
网络状态
21
ftp
文件传输协议
23
Telnet
远程登录
25
SMTP
电子邮件
37
Time
时间
43
Nicname
别名查询
69
TFTP
普通文件传送协议
79
Finger
用户信息查询
101
Hostname
NIC主机名服务
表2:专用程序端口号
补:
  DNS端口号是 53
   用户在使用专用程序时,不允许改变其端口号,这是必须遵守的一条规则。不过,用户新开发的网络通信应用程序可以自己设置其端口号,但不能和用做公共服务的端口号发生冲突。一般情况下,所有小于255的端口号都保留做公共服务(程序),其它规定应视你使用的操作系统而定。
  TCP/IP端口就像每个居民住户的门牌号码,你要访问某个家庭,除要知道这个家庭所在的国家、城市、小区和街道外,还要知道其门牌号码才能正确到达。TCP/IP的传输层协议(主要指TCP和UDP)要和各种端口直接打交道,特别是无连接的UDP协议,它在传输数据时重点就放在端口上。当然,面向连接的TCP协议在传输数据时将重点放在连接上,而不是端口,使用TCP的应用程序可以为同一端口打开多个连接,传输仍能正确进行。也就是说,UDP通信就像平信邮递业务,邮差(UDP)只将邮件(数据)放在正确的家庭或单位信箱(端口)中,并不通知收件人(应用程序)邮件已到;而TCP则更像邮政系统的电话业务,只有先建立呼叫(连接)后,才能使用电话(端口)进行对话(数据交换)。
  需要注意的是:在编写发送方的应用程序时,一般不用关心程序使用的端口号,但在接收方必须知道。每次发送方传输报文时,传输层自动在包头的源端口域中插入正确的端口号。、

原文链接:
http://blog.chinaunix.net/u1/47950/showart_1087521.html



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/36142/showart_2047604.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP