Datecom-HCIA-02 OSI和TCP参考模型
数字化时代,各种信息以数据的形式充斥着我们的生活。什么是数据?数据又是如何传递的?
本文将通过网络参考模型去简单了解数据的“一生”。
应用和数据
故事的起源 - 应用
应用的存在,是为了满足人们的各种需求,比如访问网页,在线游戏,在线视频等。
伴随着应用会有信息的产生。比如文本,图片,视频等都是信息的不同呈现方式。
应用的实现 - 数据
数据的产生 在计算机领域,数据是各种信息的载体。
数据传输 大部分应用程序所产生的数据需要在不同的设备之间传递。
网络参考模型与标准协议
OSI参考模型
层次 | 说明 |
---|---|
7. 应用层 | 对应用程序提供接口。 |
6. | 表示层 |
5. 会话层 | |
4. 传输层 | 建立、维护和取消一次端到端的数据传输过程。控制传输节奏的快慢,调整数据的排序等等。 |
3. 网络层 | 定义逻辑地址;实现数据从源到目的地的转发。 |
2. 数据链路层 | 将分组数据封装成帧;在数据链路上实现数据的点到点、或点到多点方式的直接通信;差错检测。 |
1. 物理层 | 在媒介上传输比特流;提供机械的和电气的规约。 |
TCP/IP参考模型
因为OSI协议栈比较复杂,且TCP和IP两大协议在业界被广泛使用,所以TCP/IP参考模型成为了互联网的主流参考模型。
TCP/IP常见协议
TCP/IP协议栈定义了一系列的标准协议。
常见协议标准化组织
IETF(Internet Engineering Task Force)
负责开发和推广互联网协议(特别是构成TCP/IP协议族的协议)的志愿组织,通过RFC发布新的或者取代老的协议标准。
IEEE(Institute of Electrical and Electronics Engineers)
IEEE制定了全世界电子、电气和计算机科学领域30%左右的标准,比较知名的有IEEE802.3(Ethernet)、IEEE802.11(WiFi)等。
ISO(International Organization for Standardization)
在制定计算机网络标准方面,ISO是起着重大作用的国际组织,如OSI模型,定义于ISO/IEC7498-1。
应用层 应用层 传输层 网络层 数据链路层 物理层
应用层为应用软件提供接口,使应用程序能够使用网络服务。应用层协议会指定使用相应的传输层协议,以及传输层所使用的端口等。
应用层的PDU被称为Data(数据)。
常见应用层协议 - FTP
FTP(File Transfer Protocol)是一个用于从一台主机传送文件到另一台主机的协议,用于文件的“下载”和“上传”,它采用C/S(Client/Server)结构。
FTP客户端:提供本地设备对远程服务器的文件进行操作的命令。用户在PC上通过应用程序作为FTPClient,并与FTP服务器建立连接后,可以对FTPServer上的文件进行操作。
FTP服务器:运行FTP服务的设备。提供远程客户端访问和操作的功能,用户可以通过FTP客户端程序登录到服务器上,访问设备上的文件。
常见应用层协议 - Telnet
Telnet是数据网络中提供远程登录服务的标准协议。 Telnet为用户提供了在本地计算机上完成远程设备工作的能力。
用户通过Telnet客户端程序连接到Telnet服务器。用户在Telnet客户端中输入命令,这些命令会在服务器端运行,就像直接在服务端的控制台上输入一样。
常见应用层协议 - HTTP
HTTP(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。
传输层
传输层协议接收来自应用层协议的数据,封装上相应的传输层头部,帮助其建立“端到端”(Port to Port)的连接。
传输层的PDU被称为Segment(段)。
TCP和UDP – 端口号
客户端使用的源端口一般随机分配,目标端口则由服务器的应用指定;
源端口号一般为系统中未使用的,且大于1023;
目的端口号为服务端开启的应用(服务)所侦听的端口,如HTTP缺省使用80。
网络层
传输层负责建立主机之间进程与进程之间的连接,而网络层则负责数据从一台主机到另外一台主机之间的传递。
网络层的PDU被称为Packet(包)。
网络层协议工作过程
数据链路层
数据链路层位于网络层和物理层之间,可以向网络层的IP、IPv6等协议提供服务。数据链路层的PDU被称为Frame(帧)。
以太网(Ethernet)是最常见的数据链路层协议。
以太网与MAC地址
物理层
数据到达物理层之后,物理层会根据物理介质的不同,将数字信号转换成光信号、电信号或者是电磁波信号。
物理层的PDU被称为比特流(Bitstream)。
常见传输介质
数据通信过程
发送方数据封装
中间网络数据传输
封装好的完整数据,将会在网络中被传递。
接收方数据解封装
不论是OSI参考模型还是TCP/IP参考模型,都采用了分层的设计理念。
▫ 各个层次之间分工、界限明确,有助于各个部件的开发、设计和故障排除
▫ 通过定义在模型的每一层实现什么功能,鼓励产业的标准化
▫ 通过提供接口的方式,使得各种类型的网络硬件和软件能够相互通信,提高兼容性
• 数据的产生与传递,需要各模块之间相互协作,同时每个模块又需要“各司其职”。