Chinaunix首页 | 论坛 | 博客
  • 博客访问: 336042
  • 博文数量: 222
  • 博客积分: 9349
  • 博客等级: 中将
  • 技术积分: 2135
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-07 13:45
文章分类

全部博文(222)

文章存档

2010年(222)

分类: LINUX

2010-08-18 19:24:25

1.1.4 端口号分配
TCP和UDP采用16bit的端口号来识别应用程序。那么这些端口号是如何选择的呢?

服务器一般都是通过知名端口号来识别的。例如,对于TCP/IP实现来说,每个FTP服务器的TCP端口号都是21,每个Telnet服务器的TCP端口号都是23,每个TFTP(普通文件传输协议)服务器的UDP端口号都是69。任何TCP/IP实现所提供的服务都用知名的1~1 023之间的端口号。这些知名端口号由Internet号分配机构(Internet Assigned Numbers Authority,IANA)来管理。

到1992年为止,知名端口号介于1~255之间。256~1 023之间的端口号通常都是由UNIX系统占用,以提供一些特定的UNIX服务,也就是说,提供一些只有UNIX系统才有的,而其他操作系统可能不提供的服务。现在IANA管理1~1 023之间所有的端口号。

Internet扩展服务与UNIX特定服务之间的一个差别就是telnet和rlogin,它们二者都允许通过计算机网络登录到其他主机上。telnet是采用端口号为23的TCP/IP标准,且几乎可以在所有操作系统上进行实现。相反,rlogin最开始时只是为UNIX系统设计的(尽管许多非UNIX系统现在也提供该服务),因此在20世纪80年代初,它的端口号为513,客户端通常对它所使用的端口号并不关心,只须保证该端口号在本机上是唯一的即可。客户端口号又称做临时端口号(即存在时间很短暂),这是因为它通常只是在用户运行该客户程序时才存在,而服务器则只要主机开着,其服务就运行。

大多数TCP/IP实现给临时端口分配1 024~5 000之间的端口号。大于5 000的端口号是为其他服务器预留的(Internet上并不常用的服务)。我们可以在后面看见许多给临时端口分配端口号的例子。大多数Linux系统的文件/etc/services都包含了人们熟知的端口号。为了找到Telnet服务,可以运行以下语句:"grep telnet /etc/services"。表1-3是一些常用TCP服务和端口。
表1-3  常用TCP服务和端口

TCP 端口
服  务  名
功    能
7
echo
echo字符(用于测试)
9
discard
丢弃字符串(用于测试)
13
daytime
日期服务
19
chargen
字符生成器
21
ftp
文件传输协议(FTP)
22
ssh
安全shell(虚拟终端或文件传输)
23
telnet
远程登录
续表
TCP 端口
服  务  名
功    能
25
smtp
电子邮件
37
time
时间服务
42
nameserve
TCP名字服务
43
whois
NIC whois服务
53
domain
域名服务(DNS)
79
finger
用户信息
80
http
WWW(万维网)
110
pop3
邮局协议3(POP3)
111
sunrpc
Sun的远程过程调用(RPC)
113
auth
远程用户名认证服务
119
nntp
网络新闻传输协议(NNTP)
143
imap
交互式邮件访问协议
443
https
用SSL加密的HTTP
512
exec
在远程UNIX主机上执行命令
513
login
登录到远程UNIX主机(rlogin)
514
shell
从远程UNIX主机获得shell(rsh)
515
printer
远程打印
1080
socks
SOCKS应用代理服务
2049
NFS
TCP之上的NFS(NFS over TCP)
6000~6001
X
X Window系统

UDP为运行于同一台或不同机器之上的两个或多个程序之间传输数据包提供了简单的、不可靠的连接。"不可靠"意味着操作系统不保证每个发出的包都能到达,也不保证包能够按序到达。不过UDP是尽力传输的,在LAN中UDP通常能达到100%的可靠性。UDP的优点在于它比TCP的开销少,较少的开销使得基于UDP的服务可以用TCP 10倍的吞吐量传输数据。

UDP主要用于SUN的NFS、NIS、主机名解析和传输路由信息。对于有些服务而言,偶然丢失一个包并不会带来太大的负面影响,因为它们会周期性地请求一个新包,或者那些包本身并不是很重要。这些服务包括who、talk和一些时间服务。表1-4是一些常用UDP服务和端口。

表1-4  常见UDP服务和端口
UDP端口
服  务  名
功    能
7
echo
在另一个数据包中返回用户的数据
9
discard
什么也不做
13
daytime
返回日期
19
chargen
字符生成器
37
time
返回时间
53
domain
域名服务(DNS)
69
tftp
普通文件传输协议
111
sunrpc
SUN的远程过程调用(RPC)
续表
UDP端口
服  务  名
功    能
123
ntp
网络时间协议(Network Time Protocol,NTP)
161
snmp
简单网络管理协议
512
biff
新邮件提示
513
who
收集关于用户登录到同一子网的其他机器的广播
514
syslog
系统日志工具
517
talk
发送talk请求
518
ntalk
一个“新”的talk请求
520
route
路由信息协议
533
netwall
写每个用户的终端
2049
NFS
网络文件系统协议(NFS)
阅读(1155) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~