计算机网络的工作原理 - 协议

单独组装计算机网络的物理部分不足以使其功能 - 连接的设备也需要通信方法。 这些通信语言被称为网络协议

网络协议的目的

没有协议,设备将缺乏理解他们通过网络连接发送给对方的电子信号的能力。 网络协议提供这些基本功能:

考虑网络协议与邮政服务如何处理物理纸质邮件的比较。 就像邮政服务管理来自多个来源和目的地的信件一样,为了做到网络协议,数据连续不断地沿着多条路径流动。 然而,与物理邮件不同的是,网络协议还提供了一些高级功能,如向一个目的地传送恒定的消息 (称为流式传输 ),并自动复制消息并一次传送到多个目的地(称为广播 )。

常见的网络协议类型

没有一种协议支持所有类型的计算机网络需求。 多年来已经发明了许多不同类型的网络协议,每个网络协议都试图支持某些种类的网络通信。 将一种协议类型与另一种协议区分开来的三个基本特征是:

1. 单工与双工 单工连接只允许一个设备在网络上传输。 相反,双工网络连接允许设备通过同一物理链路传输和接收数据。

2. 面向连接或无连接 。 面向连接的网络协议在两个设备之间交换(一种称为握手 )地址信息,使他们能够相互进行对话(称为会话 )。 相反,无连接协议将单个消息从一个点传递到另一个点,而不考虑在之前或之后发送的任何类似消息(并且不知道消息是否被成功接收)。

3. 图层 。 网络协议通常以组的形式共同工作(称为堆栈,因为图表经常将协议描述为堆叠在彼此之上的盒子)。 一些协议在较低层运行,与不同类型的无线或网络布线在物理上的工作密切相关。 其他人在与网络应用工作方式相关的较高层工作,有些人则在中间层工作。

互联网协议族

公共使用中最常见的网络协议属于互联网协议(IP)系列。 IP本身就是使家庭和其他互联网上的本地网络能够相互通信的基本协议

IP可以将单个消息从一个网络移动到另一个网络,但不支持对话(一条消息流可以在一个或两个方向上传输的连接)的概念。 传输控制协议(TCP)利用这种更高层的功能来扩展IP,并且因为点对点连接在因特网上非常重要,所以这两种协议几乎总是配对在一起并称为TCP / IP。

TCP和IP都在网络协议栈的中间层进行操作。 Internet上流行的应用程序有时在TCP / IP之上实现了自己的协议。 超文本传输​​协议(HTTP)由全球的Web浏览器和服务器使用。 反过来,TCP / IP运行在像以太网这样的低级网络技术之上。 IP系列中其他流行的网络协议包括ARPICMPFTP

网络协议如何使用数据包

互联网和大多数其他数据网络通过将数据组织成称为数据包的小块来工作。 为了提高通信性能和可靠性,两个网络设备之间发送的每个较大的消息通常通过底层硬件和软件细分为较小的数据包。 这些分组交换网络需要根据网络支持的协议以特定方式组织分组。 这种方法适用于现代网络技术,因为它们都以位和字节的形式处理数据(数字“1”和“0”)。

每个网络协议都定义了如何组织(格式化)数据包的规则。 由于像Internet协议这样的协议经常在层中协同工作,嵌入在为一个协议格式化的数据包内的一些数据可以采用某种其他相关协议(称为封装的方法)的格式。

协议通常将每个数据包分成三部分 - 标头有效载荷页脚 。 (某些协议,如IP,不使用页脚。)数据包的页眉和页脚包含支持网络所需的上下文信息,包括发送和接收设备的地址,而有效载荷包含要传输的实际数据。 页眉或页脚通常还包含一些特殊数据,以帮助提高网络连接的可靠性和/或性能,例如跟踪消息发送顺序的计数器以及帮助网络应用程序检测数据损坏或篡改的校验和

网络设备如何使用协议

网络设备的操作系统包括对一些较低级别网络协议的内置支持。 例如,所有现代台式电脑操作系统都支持以太网和TCP / IP,而许多智能手机都支持Wi-Fi家族的蓝牙和协议。 这些协议最终连接到设备的物理网络接口,如其以太网端口和Wi-Fi或蓝牙无线电。

网络应用程序又支持与操作系统交谈的更高级协议。 例如,Web浏览器能够将地址(如http:// /)转换为HTTP数据包,其中包含Web服务器可以接收的必要数据,然后发回正确的Web页面。 接收设备负责将各个数据包重新组装成原始消息,方法是剥去页眉和页脚,并按正确的顺序连接数据包。