第二章 网络模型

来源:互联网 发布:mac安装cocoapods 编辑:程序博客网 时间:2024/05/17 02:48

  • 1 任务分层
  • 2 OSI模型
    • 21 层次化模型
  • 3 OSI模型的各层功能
    • 31 物理层
    • 32 数据链路层
    • 33 网络层
    • 34 传输层
    • 35 会话层
    • 36 表示层
    • 37 应用层
  • 4 TCPIP协议族
    • 41 物理层和数据链路层
    • 42 网络层
    • 43 传输层
  • 5 寻址
    • 51 物理地址
    • 52 逻辑地址
    • 53 端口地址
    • 54 专用地址

2.1 任务分层

分层的意义:将复杂的任务简单化,同时便于维护和更新.

2.2 OSI模型

开放系统是一组协议. 其允许任何两个不同的系统间的通信变得容易.

2.2.1 层次化模型

OSI模型中底部的三层是可以直接通信的. 而其他四层之间的通信则是要通过这三层才行.

层次与层次之间有接口,定义良好的接口和层功能可以使得网络模块化

第四层用来保证下层以上层能够使用的形式传输

PDU: 在协议的每一层,数据和控制信息被封装起来形成本层次的协议所允许的数据单元(块)

向下层传递的数据每经过一层都会加上一些附加的信息,这样虽然麻烦,但是却能够使数据能够应对复杂的网络环境,保证另一台计算机接收到的数据是正确的.

2.3 OSI模型的各层功能

2.3.1 物理层

物理层定义了接口与传输介质的机械与电气特性,也定义了物理设备和接口为了传输而必须执行的过程和功能

其看到的数据单位是比特

信号不一定是0-1,也可能是多种多样的信号,比如数字信号和模拟信号

信号的选择与物理层的介质有关

发送信号时需要考虑到信号速率的同步和信号宽度的同步

2.3.2 数据链路层

其看到的数据单位是帧

数据链路层在帧的头部添加发送方的物理地址和接受方的物理地址以确保数据发送到目的地.

流量控制: 如果接收方接受的速率小于发送方发送的速率,那么数据链路层就会采用流量控制机制来防止接收方过载

访问控制: 如果多台设备连接到一个链路层,数据链路层协议必须能决定在任何时刻到底由哪一台设备来获取对链路的控制权

此层还控制着纠错与重传

2.3.3 网络层

网络层负责将各个分组从源地址传递到目的地址

网络层会自动选择路由从而把分组送到他们的最终目的地,这是它的主要作用

物理层寻址负责本地网络寻址,网络层负责逻辑地址

2.3.4 传输层

负责报文的进程到进程传递

网络层将每个分组传送到指定的计算机上,而传输层则将报文传送到该计算机上的指定进程

分段和组装: 将报文分解成可传输的片段,并且给这些片段编上序号.这些序号不仅使传输层可以在接收端将报文正确地组装,而且可以用来标识和替换传输中丢失的分组

2.3.5 会话层

具体任务包括: 对话控制和同步

对话控制允许两个系统进行类似打电话那样的半双工或者全双工的方式进行通信

同步允许一个进程在数据流中添加类似存档点的东西来使得数据不用完全重传

控制进入和退出系统. 建立,管理和终止会话

2.3.6 表示层

负责翻译,加密和压缩数据

2.3.7 应用层

负责向用户提供服务

2.4 TCP/IP协议族

2.4.1 物理层和数据链路层

在这个层中,TCP/IP不定义任何协议. 它支持所有标准和专门协议,采用TCP/IP互联的网络可以是局域网或互联网

2.4.2 网络层

IP协议: IP协议尽力传输数据到目的地,但是IP协议假定了底层是不可靠的,只是尽最大努力传输数据到目的地,但是并没有保证

ARP协议: 地址解析协议将逻辑地址和物理地址相联系起来.

RARP协议: 逆地址解析协议

ICMP协议: 用来向发送方通知数据所发生的问题

IGMP协议: 用于将一个报文同时发送给一组接受者

2.4.3 传输层

传输层在TCP/IP中用两个协议表示: TCP和UDP.他们将分组从一个物理设备传递到另一个物理设备.

UDP(User Datagram Protocol),一个进程到进程的协议

TCP(Transmission Control Protocol),TCP将数据流划分成一个个更小的片段,每个片段包含一个序号,便于在接收端在接收到这些片段后对其进行排序

SCTP(Stream Control Transmission Protocol),流控制传输协议

2.5 寻址

采用TCP/IP的互联网使用四层地址: 物理(链路)地址(physical(link) address),逻辑(IP)地址(logical address),端口地址(port address)和专用地址

2.5.1 物理地址

它包含在链路层所用的帧中,是最低级的地址

它在LAN或者WAN中使用

网卡上的MAC地址全球唯一,MAC地址是由12个十六进制的数字组成的,比如07:01:02:01:2C:4B

2.5.2 逻辑地址

它包含在网络层中,它与下面的物理网络无关. 物理地址不适用与互联网的环境.

为了有全世界的寻址系统,便于每台主机有唯一的标记,我们设计了逻辑地址,它唯一定义了连接到因特网的一台主机. 因特网上没有两台主机具有相同的IP地址

下面的例图详细地展示了这个过程

逻辑地址A和物理地址10的计算机想要发送一个分组到逻辑地址20和物理地址为P的计算机.

注意:在多数协议中,逻辑源地址在逻辑目的地址之前,这点与物理地址刚好相反

跳到跳时物理地址会发生改变,但是逻辑地址不会发生改变

2.5.3 端口地址

IP地址和物理地址对于从源主机到目的主机的数据传输是必需的.但是数据仅仅到达目的还是不够的.

因特网通信的最终目的是进程到进程的通信. 我们对于不同的进程,需要用一种方法来标记不同的进程. 简而言之,我们需要一种叫做端口地址(16位)的地址标识符.

2.5.4 专用地址

有些面向用户的应用被设计为专用地址.比如电子邮件的地址和URL. 这些地址由发送计算机转换成对应的端口地址和逻辑地址