代码改变世界

TCP/IP RFC(实用转贴)

2009-09-26 22:41  htc开发  阅读(325)  评论(0编辑  收藏  举报

TCP/IP协议文档
chinayaosir email:chinayaosir@126.com 整理时间:2007/08-10
/*************************************************************************/
目录清单
1.数据链路层
.ATM
.Token-Ring
.Ethernet
----------------------------
2.网络层
.IP(IPv4,IPv6)
.ICMP
.IGMP
.ARP
.RARP
----------------------------
3.传输层
.TCP
.UDP
.RTP
----------------------------
4.应用层
基于TCP:
.TELNET
.FTP
.HTTP
.POP3
.SMTP

基于UDP:
.SNMP
.DNS
.TFTP
.DHCP/DHCPv4

发展中的新协议
.RPC
.SSH
.SOAP

/*************************************************************************/
1.数据链路层
.ATM
.Token-Ring
.Ethernet
/------------------------------------------------------------------------/
名称:ATM
英文:Asynchronous Transfer Mode
中文:异步传输模式,又叫信元中继
功能:ATM是一项数据传输技术
说明:ATM采用面向连接的交换方式,它以信元(cell)为单位。
每个信元长53字节,其中报头占了5字节。
既能够支持有连接的业务,又能支持无连接的业务。
它适用于局域网和广域网,它具有高速数据传输率,
支持许多种类型如声音、数据、传真、实时视频、CD质量音频和图像的通信。
是宽带ISDN(B-ISDN)技术的典范。

/------------------------------------------------------------------------/
名称:Token-Ring
英文:Token-Ring
中文:令牌环
功能:定义在IEEE 802.5标准中的一种局域网接入方式
说明:令牌环网络的基本原理是利用令牌来避免网络中的冲突,
与使用冲突检测算法CSMA/CD的以太网相比,提高网络的数据传送率。
一个4M的令牌环网络和一个10M的以太网数据传送率相当,
一个16M的令牌环网络的数据传送率接近一个100M的以太网。
当网络中一个结点拿到令牌使用网络后,不管此结点使用多少频宽,
其它结点必须等待其使用完网络并放弃令牌后才有机会申请令牌并使用网络,
此外网络中还需要专门结点维护令牌。
上世纪80年代中期由IBM开发出,很长一段时间是IBM的网络标准,被所有IBM生产的计算机支持。
令牌环网络在实际应用中是环形网络,只不过由于使用所谓多站接入单元的设备,可以实现星形的布线。
这样一个设备具有一定智能,会将不用的端口环接起来,使令牌能畅通。
IEEE 802.5标准是主要基于IBM的令牌环网络

/------------------------------------------------------------------------/
名称:Ethernet
英文:Ethernet
中文:以太网
功能:是一种计算器局域网组网技术
说明:IEEE制定的IEEE 802.3标准给出了以太网的技术标准。
它规定了包括物理层的联机、电信号和介质访问层协议的内容。
以太网是当前应用最普遍的局域网技术。

/*************************************************************************/
2.网络层
.IP(IPv4,IPv6)
.ICMP
.IGMP
.ARP
.RARP
/------------------------------------------------------------------------/
名称:IP
英文:Internet Protocol
中文:网际协议或互联网协议
文档:RFC 791
http://tools.ietf.org/html/rfc791
功能:IP协议最为复杂的方面可能就是在于寻址和路由。
说明:寻址就是如何将IP地址分配给各个网络端点,以及局部网络如何划分和组合。
所有网络端点都需要路由,尤其是网际之间的路由器。
路由器通常用内部网关协议(Interior Gateway Protocols,IGPs)
或外部网关协议(External Gateway Protocols,EGPs)决定怎样发送IP数据包.
IP是TCP/IP协议族中最为核心的协议。
所有的TCP、UDP、ICMP、IGMP数据都以IP数据报格式传输
IP(IPv4,IPv6):
而现在正在网络中运行的IP协议是IPv4;
IPv6 为IPv4的后续的一个版本。
互联网现在正慢慢的耗尽IP地址,而IPv6的出现解决了这个问题.
与IPv4的32位的地址相比较而言,IPv6拥有128位的地址空间可以提供比前者多很多的地址。

/------------------------------------------------------------------------/

名称:ICMP
英文:Internet Control Message Protocol
中文:互联网控制消息协议
文档:RFC 792
http://tools.ietf.org/html/rfc792
功能:在TCP/IP网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈信息
说明:ICMP 是一个错误侦测与回报机制,其目的是让管理员能够检测网络的联机状况,
也能确保联机的准确性,主要功能有:
.侦测远程主机是否存在.建立及维护路由数据.重导数据传送路径。

/------------------------------------------------------------------------/

名称:IGMP
英文:Internet Group Management Protocol
中文:互联网组消息协议
文档:RFC 966,988
http://tools.ietf.org/html/rfc966
http://tools.ietf.org/html/rfc988
功能:支持主机和路由器进行多播.
说明:管理互联网协议多播组成员的一种通信协议。
ICMP用于单播连接,IGMP是IP多播说明的一个完整部分。
它让一个物理网络上的所有系统知道主机当前所在的多播组.

/------------------------------------------------------------------------/

名称:ARP
英文:Address Resolution Protocol
中文:地址解析协议
文档:RFC 826
http://tools.ietf.org/html/rfc826
功能:将IP地址翻译为以太网的MAC地址
说明:ARP具体说来就是将网络层地址解析为数据连接层的MAC地址。

/------------------------------------------------------------------------/

名称:RARP
英文:A Reverse Address Resolution Protocol
中文:逆向地址解析协议
文档:RFC 903
http://tools.ietf.org/html/rfc903
功能:就是将主机的物理地址翻译为IP地址
说明:比如局域网中有一台主机只知道物理地址而不知道IP地址,
那么可以通过RARP协议发出征求自身IP地址的广播请求,然后由RARP服务器负责回答。

/*************************************************************************/
3.传输层
.TCP
.UDP
.RTP
/------------------------------------------------------------------------/

名称:RTP
英文:Real-time Transport Protocol
中文:实时传送协议
文档:RFC 1889
http://tools.ietf.org/html/rfc1889
功能:RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式
说明:是一个网络传输协议,它是由IETF的多媒体传输工作小组1996年在RFC 1889中公布的。
RTP协议常用于流媒体系统(配合RTSP协议),视频会议(配合H.323或SIP)使它成为IP电话产业的技术基础。
RTP协议和RTP控制协议RTCP一起使用,而且它是建立在用户数据报协议上的。

/------------------------------------------------------------------------/

名称:TCP
英文:Transmission Control Protocol
中文:传输控制协议
文档:RFC 793
http://tools.ietf.org/html/rfc793
功能:是一种面向连接的、可靠的、基于字节流的运输层通信协议
说明:该协议主要用于在主机间建立一个虚拟连接,以实现高可靠性的数据包交换,
传输模式中在将数据包成功发送给目标计算机后,TCP会要求发送一个确认;
如果在某个时限内没有收到确认,那么TCP将重新发送数据包。
另外,在传输的过程中,如果接收到无序、丢失以及被破坏的数据包,TCP还可以负责恢复。
TCP是一个工业标准的协议集,它是为广域网(WANs)设计的,它是由ARPANET网的研究机构发展起来的。
TCP+IP=>ARPANET=>Internat:TCP与IP两个协议产生ARPANET,ARPANET产生今天的Internat

/------------------------------------------------------------------------/

名称:UDP
英文:User Datagram Protocol
中文:用户数据报协议
文档:RFC 768
http://tools.ietf.org/html/rfc768
功能:一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务.
说明:UDP 协议基本上是 IP 协议与上层协议的接口。
由于 UDP 比较简单, UDP 头包含很少的字节,比 TCP 负载消耗少。
适用于不需要 TCP 可靠机制的情形,当高层协议或应用程序提供错误和流控制功能的时候。
服务于很多知名应用层协议,包括网络文件系统(NFS),简单网络管理协议(SNMP),
域名系统(DNS),简单文件传输(TFTP).

/*************************************************************************/
4.应用层
基于TCP:
.TELNET
.FTP
.HTTP
.POP3
.SMTP

基于UDP:
.SNMP
.DNS
.TFTP
.DHCP/DHCPv4

发展中的新协议
.RPC
.SSH
.SOAP

/------------------------------------------------------------------------/
名称:TELNET
英文:telecommunication network protocol
中文:电信网络协议
文档:RFC 854
http://tools.ietf.org/html/rfc854
功能:是Internet远程登陆服务的标准协议,它为用户提供了在本地计算器上完成远程主机工作的能力。
说明:定义了一种通用字符终端叫做网络虚拟终端Network Virtual Terminal,
NVT是虚拟设备,连接的双方,即客户机和服务器,都必须把它们的物理终端和NVT进行相互转换。

在TCP/IP网络上,有两种应用提供远程登录功能:Telnet,Rlogin
1.Rlogin起源于伯克利Unix,开始它只能工作在Unix系统之间,现在已经可以在其他操作系统上运行。
2.Telnet是标准的提供远程登录功能的应用,几乎每个TCP/IP的实现都提供这个功能,它能够运行在不同操作系统的主机之间
BBS和LINUX远程登录是常见的telnet客户端使用方式
/------------------------------------------------------------------------/
名称:FTP
英文:File Transfer Protocol
中文:文件传输协议
文档:RFC 959
http://tools.ietf.org/html/rfc959
功能:就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,
然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
说明:FTP服务一般运行在20和21两个端口。
端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流,是命令通向ftp服务器的进口。
/------------------------------------------------------------------------/
名称:HTTP
英文:Hypertext Transfer Protocol
中文:超文本传输协议
文档:RFC
HTTP/1.0 RFC 1945 http://tools.ietf.org/html/rfc1945
HTTP/1.1 RFC 2068 http://tools.ietf.org/html/rfc2068
功能:
说明:HTTP是一种为分布式,合作式,多媒体信息系统服务,面向应用层的协议。
在1990年WWW全球信息刚刚起步的时候HTTP就得到了应用。

/------------------------------------------------------------------------/
名称:POP3
英文:Post Office Protocol - Version 3
中文:邮局协议版本3
文档:RFC 1939 
http://tools.ietf.org/html/rfc1939
功能:允许工作站检索邮件服务器上的邮件
说明:用于支持使用客户端远程接受在服务器上的电子邮件

/------------------------------------------------------------------------/
名称:SMTP
英文:Simple Mail Transfer Protocol
中文:简单邮件传输协议
文档:RFC 0821
http://tools.ietf.org/html/rfc0821
功能:一种提供可靠且有效电子邮件传输的协议。
说明:SMTP 是建模在 FTP 文件传输服务上的一种邮件服务,基于TCP协议
主要用于传输系统之间的邮件信息并提供来信有关的通知。
独立于特定的传输子系统,且只需要可靠有序的数据流信道支持
重要特性之一是其能跨越网络传输邮件,即“ SMTP 邮件中继”。

/------------------------------------------------------------------------/

名称:SNMP
英文:simple network management protocol
中文:简单网络管理协议
文档:RFC 1157
http://tools.ietf.org/html/rfc1157
功能:简单的网络管理协议
说明:SNMP是被广泛接受并投入使用的工业标准,用于保证管理信息在任意两点间传送,
SNMP的实现基于简单网关监视协议(SGMP: Simple Gateway Monitor Protocol)。
用SNMP一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、
修改网络设备配置、接收网络事件警告等.
虽然SNMP开始是面向基于IP的网络管理,作为一个工业标准也被成功用于电话网络管理。
对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的。
每个SNMP从代理负责回答SNMP管理工作站(主代理)关于MIB定义信息的各种查询。
SNMP代理和管理站通过SNMP协议中的标准消息进行通信,每个消息都是一个单独的数据报。
SNMP使用UDP作为第四层协议(传输协议)进行无连接操作。
SNMP消息报文包含两个部分:SNMP报头和协议数据单元PDU。

/------------------------------------------------------------------------/
名称:DNS
英文:Domain Name Service
中文:域名服务
文档:RFC XXXXX
功能:把Internet上的主机分配域名地址转为IP地址
说明:为Internet上的主机分配域名地址和IP地址。
用户使用域名地址,该系统就会自动把域名地址转为IP地址。
域名服务是运行域名系统的Internet工具,执行域名服务的服务器称之为DNS服务器.
通过DNS服务器来应答域名服务的查询。
1.DNS就是域名服务器,他的任务就是确定域名的解析。
2.任何域名都至少有一个DNS,一般是2个。因为DNS可以轮回处理,第一个解析失败可以找第二个。
这样只要有一个DNS解析正常,就不会影响域名的正常使用。
3.如何确定域名的DNS
www.internic.net/whois.html ,这个是国际域名管理中心,唯一的权威。
只要这里能查到某个域名,就表示域名是生效的。
它说你什么时候到期,就是什么时候到期。

/------------------------------------------------------------------------/
名称:DHCP/DHCPv4
英文:Dynamic Host Configuration Protocol
中文:动态主机配置协议
文档:RFC 2131 3396
http://tools.ietf.org/html/rfc2131
http://tools.ietf.org/html/rfc3396
功能:一种使网络管理员能够集中管理和自动分配 IP 网络地址的通信协议
说明:在 IP 网络中,每个连接 Internet 的设备都需要分配唯一的 IP 地址。
DHCP 使网络管理员能从中心结点监控和分配 IP 地址。
当某台计算机移到网络中的其它位置时,能自动收到新的 IP 地址。
/------------------------------------------------------------------------/

名称:TFTP
英文:Trivial File Transfer Protocol
中文:简单文件传送协议
文档:RFC 1350
http://tools.ietf.org/html/rfc1350
功能:最初打算用于引导无盘系统,通常是工作站或X终端.
说明:为了保持简单和短小, TFTP使用UDP。

/------------------------------------------------------------------------/
名称:RPC
英文:Remote Procedure Call Protocol
中文:远端过程调用协议
文档:RFC 1831
http://tools.ietf.org/html/rfc1831
功能:通过网络从远程计算机程序上请求服务
说明:一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.
RPC使得开发包括网络分布式多程序在内的应用程序更加容易。
RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。
首先,调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。
在服务器端,进程保持睡眠状态直到调用信息的到达为止。
当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,
最后,客户端调用过程接收答复信息,获得进程结果,然后调用执行继续进行。
目前,有多种RPC模式和执行。
最初由Sun公司提出。IETF ONC宪章重新修订了Sun版本,使得ONC PRC协议成为IETF标准协议。
现在使用最普遍的模式和执行是开放式软件基础的分布式计算环境(DCE)。
/------------------------------------------------------------------------/

名称:SSH
英文:Secure Shell
中文:简单对象访问协议
文档:RFC xxxx
功能:专为远程登录会话和其它网络服务提供安全性的协议
说明:SSH 是目前较可靠,专为远程登录会话和其它网络服务提供安全性的协议
SSH开发者的原意是设计它来取代原UNIX系统上的rcp、rlogin、rsh等指令程序的;
但经过适当包装后,发现它在功能上完全可以取代传统的Telnet、FTP等应用程序。
SSH有很多功能,它既可以代替Telnet,又可以为FTP、Pop、甚至为PPP提供一个安全的"通道"。

/------------------------------------------------------------------------/
名称:SOAP
英文:Simple Object Access Protocol
中文:简单对象访问协议
文档:RFC xxxx
功能:是一种标准化的通讯规范,主要用于Web服务
说明:SOAP的出现是为了简化Web Server从XML数据库中提取数据时,无需花时间去格式化页面,
并能够让不同应用程序之间透过HTTP通讯协议,以XML格式互相交换数据,使其与程序语言、平台和硬件无关。
SOAP的指导理念是“它是第一个没有发明任何新技术的技术”。
SOAP采用了已经广泛使用的两个协议:HTTP和XML。
HTTP用于实现SOAP的RPC风格的传输,而XML是它的编码模式。
采用几行代码和一个XML解析器,HTTP服务器(如MS的IIS或Apache)立刻成为了SOAP的ORBs。
/------------------------------------------------------------------------/