第1章 引言
协议层次结构
绝大多数网络都组织成一个层次栈或分级栈,每一层都建立在其下一层的基础之上。
协议:指通信双方就如何进行通信的一种约定。一台机器上的第n层与另一台机器上的第n层进行对话时,所使用的规则和约定统称为第n层协议。
协议栈:一个特定的系统所使用的一组协议。
对等体:不同机器上构成相应层次的实体称为对等体。
接口:定义了下层向上层提供哪些原语操作和服务。
网络体系结构:层和协议的集合。
多层通信过程
- 在输出端的机器上,上层向下层传递消息时,下层在消息前加上一个头,用来标识该信息,并把结果传递给再下一层。该头包含一些控制信息。
- 在限制消息大小的层(几乎所有的第3层协议),把入境消息分割成较小的单元,即数据包或包,并在每个数据包前面加上该层的头。每个数据包单独传输。
- 第2层给每个信息加上一个头和一个尾,然后将结果传送给第1层进行物理传输。
- 在接收端的机器上,消息自底向上逐层传递,在传递过程中各个头被逐层剥离。没有一个第n层以下的头会被传递到第n层。
服务
面向连接的服务
首先在信源和信宿之间建立连接,然后在此连接上通信,最后拆除连接。
特点:占用一定资源,可靠,按序传送。
可靠服务:接收方向发送方确认收到的每个报文。确认过程本身要引入额外的开销和延迟。
可靠的面向连接服务可分为可靠的报文流和可靠的字节流。前者保持报文的边界,而后者没有。此外还有不可靠的连接,及不进行确认。
无连接服务
传送数据前不需要建立连接,即有即送。每个报文都携带了完整的目标地址。
特点:每个数据包独自寻路(重复劳动),同一数据流的包可能经过不同的路径到达目的地,到达的顺序也可能颠倒。
可分为不可靠的无连接服务(数据报服务),有确认的数据报服务,请求-应答服务(发送方传输一个包含了某个请求的数据报,接受方以一个包含了请求结果的应答数据报作为反馈)。
参考模型
OSI参考模型
名字 | 功能 |
---|---|
物理层 | 主要涉及机械,电子,时序接口,以及物理层之下的物理传输介质等。 |
数据链路层 | 发送方将输入数据拆分成数据帧,然后顺序发送;错误检测和纠正;流量控制。 |
网络层 | 寻址和路由数据包,拥塞控制。 |
传输层 | 接收来自上一层的数据(必要时分割),然后传递给网络层;决定了向会话层(用户)提供的服务类型。 |
会话层 | 建立(或清除)在两个通信的表示层之间的通信通道;包括交互管理,同步,异常报告。 |
表示层 | 负责数据的表示语法。 |
应用层 | 处理应用进程之间所发送和接收的数据中包含的信息内容,包含各种协议。 |
TCP/IP参考模型
名字 | 功能 |
---|---|
链路层 | 主机和传输线路之间的一个接口。 |
互联网层 | 提供非连接的分组交换功能;定义了官方的数据包格式和协议,因特网协议(IP)及辅助协议,因特网控制报文协议(ICMP)。 |
传输层 | 定义了两个端到端的传输协议:可靠的,面向连接的传输控制协议(TCP);不可靠的,无连接的用户数据报协议(UDP)。 |
应用层 | 包含了所有的高层协议。 |