- 论坛徽章:
- 0
|
Internet协议族(Internet Protocol Suite))
网络分层:
TCP/IP,是一组不同层次上的多个协议的组合。TCP/IP通常被认为是一个四层协议系统:
1.链路层:也称为数据链路层或网络接口层,包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。处理与电缆(或其他任何传输媒
介)的物理接口细节。包括A R P(地址解析协议)和R A R P(逆地址解析协议
2.网络层:也称作作互联网层,处理分组在网络中的活动。。在TCP/IP协议族中,网络层协议包括:
IP协议(网际协议)
ICMP协议(Internet互联网控制报文协议)。IP层用它来与其他主机或路由器交换错误报文和其他重要信息。
IGMP协议(Internet组管理协议)。用来把一个U D P数据报多播到多个主机。
3.运输层:为两台主机上的应用程序提供端到端的通信,在TCP/IP协议族中,有两个互不相同的传输协议: TCP(传输控制协议)和UDP(用户数据报协议)。
TCP:提供高可靠性的数据通信,把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。
UDP:为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。
4.应用层:应用层负责处理特定的应用程序细节,。几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序:
• Telnet 远程登录。
• FTP 文件传输协议。
• SMTP 简单邮件传送协议。
• SNMP 简单网络管理协议。
在TCP/IP中,网络层和运输层之间的区别是最为关键的:网络层(IP)提供点到点的服务,而运输层( TCP和UDP)提供端到端的服务。
构造互连网最简单的方法是把两个或多个网络通过路由器进行连接。路由器的好处是为不同类型的物理网络提供连接:以太网、令牌环网、
点对点的链接和FDDI(光纤分布式数据接口)等等。
在TCP/IP协议族中,网络层IP提供的是一种不可靠的服务。它只是尽可能快地把分组从源结点送到目的结点,但是并不提供任何可靠性保证。
而另一方面, TCP在不可靠的IP层上提供了一个可靠的运输层。
连接网络的另一个途径是使用网桥。网桥是在链路层上对网络进行互连,而路由器则是在网络层上对网络进行互连。网桥使得多个局域网(LAN)组合在一起,这样对上层来说就好像是一个局域网。
互联网的地址
互联网上的每个接口必须有一个唯一的Internet地址(也称作IP地址)。IP地址长32 bit。Internet地址并不采用平面形式的地址空间
点分十进制表示法( Dotted decimal notation)
域名系统( DNS)是一个分布的数据库,由它来提供IP地址和主机名之间的映射信息
封装:
当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要
增加一些首部信息(有时还要增加尾部信息)。TCP传给IP的数据单元称作TCP报文段或简称为TCP段(TCP segment)。IP传给网络接口层的数
据单元称作IP数据报(IP datagram)。通过以太网传输的比特流称作帧(Frame)
以太网数据帧的物理特性是其长度必须在46~1500字节之间
分组(packet)既可以是一个IP数据报,也可以是IP数据报的一个片(fragment)
UDP数据与TCP数据基本一致。唯一的不同是UDP传给IP的信息单元称作UDP数据报(UDP datagram),而且UDP的首部长为8字节。
IP在首部中存入一个长度为8bit的数值,称作协议域。1表示为ICMP协议, 2表示为IGMP协议, 6表示为TCP协议, 17表示为UDP协议。以
表明数据属于哪一层
运输层协议在生成报文首部时要存入一个应用程序的标识符。TCP和UDP都用一个16bit的端口号来表示不同的应用程序。TCP和UDP把源端口
号和目的端口号分别存入报文首部中。
以太网的帧首部也有一个16bit的帧类型域,以指明生成数据的网络层协议
分用:
当目的主机收到一个以太网数据帧时,数据就开始从协议栈中由底向上升,同时去掉各层协议加上的报文首部。每层协议盒都要去检查报
文首部中的协议标识,以确定接收数据的上层协议。这个过程称作分用(Demultiplexing)
为ICMP和IGMP报文都被封装在IP数据报中。
客户-服务器模型
两种类型:重复型或并发型。重复型服务器通过以下步骤进行交互:
I1. 等待一个客户请求的到来。
I2. 处理客户请求。
I3. 发送响应给发送请求的客户。
I4. 返回I1步。
重复型服务器主要的问题发生在I2状态。在这个时候,它不能为其他客户机提供服务。
并发型服务器采用以下步骤:
C1. 等待一个客户请求的到来。
C2. 启动一个新的服务器来处理这个客户的请求。在这期间可能生成一个新的进程、任务或线程,并依赖底层操作系统的支持。这个步骤
如何进行取决于操作系统。生成的新服务器对客户的全部请求进行处理。处理结束后,终止这个新服务器。
C3. 返回C 1步。
并发服务器的优点在于它是利用生成其他服务器的方法来处理客户的请求。也就是说,每个客户都有它自己对应的服务器。
一般来说, TCP服务器是并发的,而UDP服务器是重复的
端口号
服务器一般都是通过知名端口号来识别的。
对于常见的实现: FTP( TCP 21) ;Telnet(TCP 23);TFTP(UDP 69)
任何TCP/IP实现所提供的服务都用知名的1~1023之间的端口号。这些知名端口号由Internet号分配机构( Internet Assigned Numbers
Authority, IANA)来管理。
客户端通常对它所使用的端口号并不关心,只需保证该端口号在本机上是唯一的就可以了。客户端口号又称作临时端口号(即存在时间很短暂)
大多数TCP/IP实现给临时端口分配1024~5000之间的端口号。大于5000的端口号是为其他服务器预留的(Internet上并不常用的服务)
一些术语:
端系统( End system ),中间系统(Intermediate system) ,端到端(End - to - end),逐跳(Hop - by - hop)
任何具有多个接口的系统,英文都称作是多接口的(multihomed)。
RFC(Request for Comment)
NCP,即网络控制协议,是ARPANET的运输层协议,是TCP的前身
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/8361/showart_226296.html |
|