TCP/IP协议
维基百科,自由的百科全书
应用层 | DNS, FTP, ENRP,HTTP, IMAP, IRC, NNTP, POP3, RTP, SIP, SMTP, SNMP, SSH, Telnet, BitTorrent, DHCP ... |
传输层 | DCCP, SCTP, TCP, UDP, IL, RUDP, ... |
网络层 | IP(IPv4, IPv6),ICMP,ARP,RARP,IGMP... |
数据链路层 | Ethernet, Wi-Fi, Token Ring, MPLS, PPP ... |
物理层 | RS-232, EIA-422, RS-449, EIA-485, 10BASE2, 10BASE-T ... |
TCP/IP协议,包含了一系列构成互联网基础的网络协议。这些协议最早发源于美国国防部的ARPA网项目。TCP/IP字面上代表了两个协议:TCP(传输控制协议)和IP(网际协议)。
1983年1月1日,在因特网的前身ARPA网中,TCP/IP协议取代了旧的网络核心协议(NCP,Network Core Protocol),从而成为今天的互联网的基石。最早的TCP/IP由Vinton Cerf和Robert Kahn两位开发,慢慢地通过竞争战胜了其它一些网络协议的方案,比如国际标准化组织ISO的OSI模型。TCP/IP的蓬勃发展发生在上世纪的90年代中期。当时一些重要而可靠的工具的出世,例如页面描述语言HTML和浏览器Mosaic,导致了互联网应用的飞速发展。
随着互联网的发展,目前流行的IPv4协议(网际协议版本四)已经接近它的功能上限。IPv4最致命的两个缺陷在与:
- 地址只有32位,IP地址空间有限
- 不支持服务等级(Quality of Service, QoS)的想法,无法管理带宽和优先级,故而不能很好的支持现今越来越多的实时的语音和视频应用。因此IPv6(网际协议版本六)浮出海面,用以取代IPv4。
TCP/IP成功的另一个因素在与对为数众多的低层协议的支持。这些低层协议对应与OSI模型 中的第一层(物理层)和第二层(数据链路层)。每层的所有协议几乎都有一半数量的支持TCP/IP,例如: 以太网(Ethernet),令牌环(Token Ring),光纤数据分布接口(FDDI),端对端协议(PPP),X.25,帧中继(Frame Relay),ATM,Sonet, SDH等。
目录 |
[编辑] TCP/IP協議棧組成
整個通信網絡的任務,可以劃分成不同的功能區塊,即所謂的層級(layer) 。用於互聯網的協議可以比照TCP/IP參考模型進行分類。TCP/IP協議棧起始於第三層協議IP(網際協議)。所有這些協議都在相應的RFC文檔中討論及標準化。重要的協議在相應的RFC文檔中均標記了狀態: “必須”(required) ,“推薦”(recommended) ,“可選”(elective) 。其它的協議還可能有“試驗”(experimental) 或“歷史”(historic) 的狀態。”
[编辑] 必须协议
所有的TCP/IP应用都必须实现IP和ICMP。对于一个路由器(router)而言,有这两个协议就可以运作了,虽然从应用的角度来看,这样一个路由器 意义不大。实际的路由器一般还需要运行许多“推荐“使用的协议,以及一些其它的协议。
几乎所有连接到互联网上的计算机上都存在的IPv4协议出生在1981年,今天的版本和最早的版本并没有多少改变。升级版IPv6的工作始于1995年,目的在与取代IPv4。ICMP协议主要用于收集有关网络的信息查找错误等工作。
[编辑] 推荐协议
每一个应用层(TCP/IP参考模型 的最高层) 一般都会使用到两个传输层协议之一: 面向连接的TCP传输控制协议和无连接的包传输的UDP用户数据报文协议 。 其它的一些推荐协议有:
- TELNET(Teletype over the Network, 网络电传),通过一个终端(terminal)登陆到网络(运行在TCP协议上)。
- FTP(File Transfer Protocol, 文件传输协议),由名知义,用于文件传输,运行在TCP协议上。
- SMTP (Simple Mail Transfer Protocol,简单邮件传输协议) ,用来发送电子邮件(运行在TCP协议上) 。
- DNS (Domain Name Service,域名服务) ,用于完成地址查找,邮件转发等工作(运行在TCP和UDP协议上) 。
- ECHO (Echo Protocol, 回绕协议) ,用于查错及测量应答时间(运行在TCP和UDP协议上) 。
- NTP (Network Time Protocol,网络时间协议) ,用于网络同步(运行在UDP协议上) 。
- SNMP (Simple Network Management Protocol, 简单网络管理协议) ,用于网络信息的收集和网络管理。
- BOOTP (Boot Protocol,启动协议) ,应用于无盘设备(运行在UDP协议上)。
[编辑] 可选协议
最常用的一些有
- 支撑万维网(WWW)的超文本传输协议HTTP,
- 动态配置IP地址的DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),
- 收邮件用的POP3 (Post Office Protocol, version 3, 邮局协议) ,
- 用于加密安全登陆用的SSH (Secure Shell,用于替代安全性差的TELNET) ,
- 用于动态解析以太网硬件的地址的ARP (Address Resolution Protocol,地址解析协议) 。
[编辑] 范例: 不同计算机运行的不同协议
- 一个简单的路由器上可能会实现ARP, IP, ICMP, UDP, SNMP, RIP。
- WWW用户端使用ARP, IP, ICMP, UDP, TCP, DNS, HTTP, FTP。
- 一台用户电脑上还会运行如TELNET, SMTP, POP3, SNMP, ECHO, DHCP, SSH, NNTP。
- 无盘设备可能会在固件比如ROM中实现了ARP, IP, ICMP, UDP, BOOT, TFTP (均为面向数据报的协议,实现起来相对简单)。
[编辑] 參考
[编辑] 参考文献
- RFC 1180 - TCP/IP tutorial
- TCP/IP 协议集详细资料
- 用于分组交换网互通信的协议,经典论文
- 中国协议分析网