网络协议的基本概念

网络协议的基本概念

随处可见的协议

在计算机网络与信息通信领域里,人们经常提及"协议"一词。互联网中常用的具有代表性的协议有IP、TCP、HTTP等。

"计算机网络体系结构"将这些网络协议进行了系统归纳。TCP/IP就是IP、TCP、HTTP等协议的集合。现在,很多设备都支持TCP/IP。除此之外,还有很多其它类型的网络体系结构。如下图:

协议的必要性

简单来说,协议就是计算机与计算机之间通过网络实现通信时事先达成的一种"约定"。这种"约定"使那些由不同厂商的设备、不同的CPU以及不同的操作系统组成的计算机之间,只要遵循相同的协议就能实现通信。反之,如果所使用的协议不同,就无法实现通信。这就好比两个人使用不同国家的语言说话,怎么也无法相互理解。协议可以分为很多种,每一种协议都明确地界定了它的行为规范。两台计算机之间必须能够支持相同的协议,并遵循相同协议进行处理,这样才能实现相互通信。

协议如同人与人的说话

在此举一个简单的例子。有三个人A、B、C。A只会说汉语、B只会说英语、而C既会说汉语又会说英语。现在A与B要聊天,他们之间应该如何沟通呢?若A与C要聊天,又会怎样?这时如果我们:

  • 将汉语和英语当作"协议"
  • 将聊天当作"通信"
  • 将说话的内容当作"数据"

那么A与B之间由于各持一种语言,相当于他们使用的协议不同,那么A与B是无法进行通信的,他们两个是无法进行交流的。而A和C是可以交流的,因为他们两个都可以使用汉语协议,协议协同,所以可以理解对方说的话,因此他们可以进行通信,如下图:

在计算机通信中,事先达成一个详细的约定,并遵循这一约定进行处理尤为重要。这种约定其实就是"协议"。

协议的分层

首先知道两个缩写的含义:

  • ISO:国际标准化组织。International Organization for Standards
  • OSI:开放式通信系统互联参考模型。Open Systems Interconnection

ISO在指定标准化OSI之前,对网络体系结构相关的问题进行了充分的讨论,最终提出了作为通信协议设计指标的OSI参考模型。这易模型将通信协议中必要的功能分成了7层。同一层之间的交互所遵循的约定叫做"协议"。

通过对话理解分层

上面A和C打电话的时候,表面上是A和C直接沟通的,其实他们都是对着手机在说话。

首先A说对着手机说一句汉语,然后作为音频输入到手机里面,电话机协议根据它的协议规则把手机的音频信号转换为电波信号,然后通过物理层把电波信号传输给对方电话机,对方电话机接收这个电波信号之后,再通过电话机协议把电波信号转变为音频信号,这样C就能停到A说的汉语了。

因此整个过程中要求双方使用的协议必须相同,比如说都是用的是电话机协议,这样A和C才能交流。如果A使用的是电话机协议,而C使用的是无线电协议,那么在C电话机最终转换后的音频信号可能不是汉语,这样C就听不懂了。因此双方必须使用同一个协议,即电话机协议,或者都使用无线电协议也行。

相关推荐
芯智工坊9 分钟前
IgH EtherCAT 从入门到精通:第 4 章 网络设备驱动选型与配置
网络·igh ethercat
白毛大侠9 分钟前
四表五链:Linux 防火墙的核心框架
linux·运维·网络
lularible13 分钟前
PTP协议精讲(2.8):逐链路精准测量——P2P延迟测量机制详解
网络·网络协议·开源·嵌入式·ptp
郝学胜-神的一滴15 分钟前
Python 多线程编程从入门到精通:原理+实战+最佳实践
开发语言·网络·python·pycharm
TechWayfarer24 分钟前
跨境电商IP归属地API实战:如何用IP纯净度检测避开连坐封号?
网络·网络协议·tcp/ip
2401_8734794025 分钟前
广告反作弊怎么验证IP地理一致性?用IP地址查询工具比对定位即可
网络·网络协议·tcp/ip
wefg128 分钟前
【计算机网络】应用层协议(序列化与反序列化/HTTP/HTTPS)
服务器·网络·计算机网络
指针刺客29 分钟前
网络协议之WebSocket
网络·websocket·网络协议
aaa最北边31 分钟前
计算机网络-断开连接的四次挥手底层细节
java·网络·计算机网络
We་ct35 分钟前
EventSource & WebSocket & HTTP
前端·javascript·网络·websocket·网络协议·http·面试