TTL生存有效时间:指定一个数据报被丢弃之前,在网络上能停留多少时间(以秒计) 。它避免了包在网络中无休止循环 。路由器会根据数据在路由器中驻留的时间来递减TTL 。其中数据报通过一次路由器,TTL至少减少一秒 。
根据我们前面提到关于ARP的知识,假如IP地址目标为本地地址时,IP将数据包直接传给那个主机;假如目标地址为远程地址的话,IP在本地的路由表中查找远程主机的路由(看来好象我们平时拨114一样) 。假如找到一个路由,IP用它传送数据包 。假如没找到呢,就会将数据包发送到源主机的缺省网关,也称之为路由器 。(很多时候一直在搞网关和路由器的定义,其实我觉得在学的时候不一定死抠概念,现在硬件和软件结合的产品越来越多了,一时很分清的,只要我们运用的时候可以解决实际问题嘛 。)
这样当路由器收到一个包后,该包向上传给IP:
(1)假如交通阻塞(听起来蛮可怕的),包在路由器中停滞,TTL至少减1或更多 。要是它降到0的话,包就会被抛弃 。
(2)假如对于下一网络来说包太大的话,IP会将它分割成若干个小包 。
(3)假如包被分解,IP为每个新包制造一个新头,其中包括:一个标志,用来显示其它小包在其后;一个小包ID,用来确定所有小包是一起的;一个小包偏移,用来告诉接收主机怎么重新组合它们 。
(4)IP计算一个新的检验和 。
(5)IP获取一个路由的目标硬件地址 。
(6)IP转发包 。
在下一主机,包被发送到TCP或UDP 。每个路由器都要重复该过程 。直到包到达最终目的地 。当包到达最终目的地后,IP将小包组装成原来的包 。
5、TCP
TCP是一种可靠的面向连接的传送服务 。它在传送数据时是分段进行的,主机交换数据必须建立一个会话 。它用比特流通信,即数据被作为无结构的字节流 。
通过每个TCP传输的字段指定顺序号,以获得可靠性 。假如一个分段被分解成几个小段,接收主机会知道是否所有小段都已收到 。通过发送应答,用以确认别的主机收到了数据 。对于发送的每一个小段,接收主机必须在一个指定的时间返回一个确认 。假如发送者未收到确认,数据会被重新发送;假如收到的数据包损坏,接收主机会舍弃它,因为确认未被发送,发送者会重新发送分段 。
端口
SOCKETS实用程序使用一个协议端口号来标明自己应用的唯一性 。端口可以使用0到65536之间的任何数字 。在服务请求时,操作系统动态地为客户端的应用程序分配端口号 。
套接字
套接字在要领上与文件句柄类似,因为其功能是作为网络通信的终结点 。一个应用程序通过定义三部分来产生一个套接字:主机IP地址、服务类型(面向连接的服务是TCP,无连接服务是UDP)、应用程序所用的端口 。
TCP端口
TCP端口为信息的传送提供定地点,端口号小于256的定义为常用端口 。
TCP的三次握手
TCP对话通过三次握手来初始化 。三次握手的目的是使数据段的发送和接收同步;告诉其它主机其一次可接收的数据量,并建立虚连接 。
我们来看看这三次握手的简单过程:
(1)初始化主机通过一个同步标志置位的数据段发出会话请求 。
(2)接收主机通过发回具有以下项目的数据段表示回复:同步标志置位、即将发送的数据段的起始字节的顺序号、应答并带有将收到的下一个数据段的字节顺序号 。
(3)请求主机再回送一个数据段,并带有确认顺序号和确认号 。
TCP滑动窗口
TCP滑动窗口用来暂存两台主机间要传送的数据,有点类似CACHE 。
每个TCP/IP主机有两个滑动窗口:一个用于接收数据,另一个用于发送数据 。
推荐阅读
- TCP/IP协议介绍 TCP/IP协议基础之二
- TCP/IP远程访问操作 TCP/IP协议基础之三
- 关于UDP协议的介绍
- PPP及PPPOE协议介绍
- 八 网络沟通的桥梁-协议X档案
- 三 网络沟通的桥梁--协议X档案
- 二 网络沟通的桥梁--协议X档案
- 五 网络沟通的桥梁--协议X档案
- 六 网络沟通的桥梁-协议X档案
- 一 网络沟通的桥梁--协议X档案
