TCP/IP协议族详解:数据在互联网中是如何“漂流”的?

引言

当你在浏览器输入网址,按下回车,网页瞬间加载,当你在与朋友聊天时,按下消息发送键,消息就会精准无误的显现在对方手机中,网络究竟是什么,数据在互联网中是如何"漂流"的?本文将为你答疑解惑。

初识协议

在计算机的世界,数据是通过光信号或电信号传播的,用信号的强弱来表示0和1,数据就是一串串由0和1组成的信号,显然这样的二进制信息我们人是看不懂,所以要传递我们人看得懂的信息就需要有协议,数据发送方按照协议将数据转换成二进制,接收方按照协议执行逆过程。

TCP/IP协议族就是一系列协议的集合,他们共同构成了我们现如今的互联网。

TCP/IP(五层)四层模型

**物理层:**负责光/电信号的传递⽅式. ⽐如现在以太⽹通⽤的⽹线(双绞线)、早期以太⽹采⽤的的同轴电缆(现在主要⽤于有线电视)、光纤, 现在的wifi⽆线⽹使⽤电磁波等都属于物理层的概念。物理层的能⼒决定了最⼤传输速率、传输距离、抗⼲扰性等. 集线器(Hub)⼯作在物理层.

**数据链路层:**负责设备之间的数据帧的传送和识别. 例如⽹卡设备的驱动、帧同步(就是说从⽹线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就⾃动重发)、数据差错校验等⼯作. 有以太⽹、令牌环⽹, ⽆线LAN等标准. 交换机(Switch)⼯作在数据链路层.

**⽹络层:**负责地址管理和路由选择. 例如在IP协议中, 通过IP地址来标识⼀台主机, 并通过路由表的⽅式规划出两台主机之间的数据传输的线路(路由). 路由器(Router)⼯作在⽹路层.

传输层: 负责两台主机之间的数据传输. 如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到⽬标主机.

**应⽤层:**负责应⽤程序间沟通,如简单电⼦邮件传输(SMTP)、⽂件传输协议(FTP)、⽹络远程访问协议(Telnet)等. 我们的⽹络编程主要就是针对应⽤层.

为什么协议需要分层?

就像一个公司的组织架构中,需要有不同的部门,每个部门又有员工和领导。

协议分层的好处在于:各层独立、灵活性高、易于维护和实现,设计上为了更好的进行模块化,解耦合,每层协议各有自己明确的职责。

本文将按照自顶向下的顺序,依次介绍每层协议的具体内容和具体实现。部分协议层有多种协议存在,本文将挑选一种较主流协议进行介绍。

相关推荐
wanhengidc2 小时前
云手机 高振畅玩不踩坑
运维·服务器·安全·web安全·智能手机
有谁看见我的剑了?2 小时前
linux 添加硬盘后系统识别不到硬盘处理
linux·运维·服务器
易连EDI—EasyLink2 小时前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
@insist1233 小时前
信息安全工程师考点精讲:身份认证核心原理与分类体系(上篇)
大数据·网络·分类·信息安全工程师·软件水平考试
SmartRadio3 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
_.Switch3 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
金色光环5 小时前
FreeModbus释放底层的 TCP 监听端口
服务器·网络·tcp/ip
数智化精益手记局5 小时前
拆解物料管理erp系统的核心功能,看物料管理erp系统如何解决库存积压与缺料难题
大数据·网络·人工智能·安全·信息可视化·精益工程
灰子学技术6 小时前
Envoy HTTP 过滤器处理技术文档
网络·网络协议·http