网络编程——深入理解TCP/IP协议——OSI模型和TCP/IP模型:构建网络通信的基石

TCP/IP协议---

一、简介

TCP/IP协议,即传输控制协议/互联网协议,是一组用于在计算机网络中实现通信的协议。它由两个主要的协议组成:TCP(传输控制协议)和IP(互联网协议)。TCP负责确保数据的可靠传输,而IP则负责路由数据包以在网络中传递。TCP/IP协议簇还包含其他辅助协议,如UDP(用户数据报协议)和ICMP(互联网控制消息协议)等,以提供更广泛的网络功能。

为了该少协议设计的复杂性,大多数网络模型均采用分层的方式来组织每一层利用下一层提供的服务来为上一层提供服务本层服务的实现细节对上层屏蔽。

二、分层结构

1、OSI模型七层协议:

应用层:应用程序实现网络通信的接口

表示层:数据进行加密解密解析

会话层:建立网络通信节点

传输层:实现点对点的通信

网络层:路由寻址

数据链路层:数据帧格式封装,实现数据纠错

物理层:屏蔽物理硬件差异,实现光电信号的转换

物、数、网、传、会、表、应

2、TCP/IP模型四层协议

①应用层 : 应用层是最靠近用户的层级,负责处理用户和应用程序之间的通信 。常见的应用层协议包括HTTP (超文本传输协议)、FTP (文件传输协议)和SMTP (简单邮件传输协议)等。
传输层 : 传输层主要负责端到端的数据传输TCPUDP是在这一层运作的两个主要协议。

TCP:提供可靠的、面向连接的数据传输,确保数据的顺序和完整性
UDP:则更加轻量级,无连接、不可靠、不保证数据的可靠性,适用于实时性要求较高的应用。

网络层 : 网络层使用IP协议来处理数据包的路由和转发 。IP地址在这一层起到关键作用,它们标识了网络上的不同设备,并且决定了数据包的传递路径。IP协议(路由寻址)、ICMP(跨传输层的通信协议)、IGMP(广播、组播)
链路层 : 链路层负责将数据包从一个网络节点传输到相邻节点,就是数据帧的发送和接收。它处理物理层面的传输细节,如以太网协议,来确保数据在相邻节点之间的可靠传输。

相关推荐
HalvmånEver31 分钟前
Linux:线程互斥
java·linux·运维
番茄灭世神43 分钟前
Linux应用编程介绍
linux·嵌入式
wdfk_prog44 分钟前
[Linux]学习笔记系列 -- [drivers][mmc][mmc_sdio]
linux·笔记·学习
Forsete1 小时前
LINUX驱动开发#9——定时器
linux·驱动开发·单片机
saber_andlibert1 小时前
TCMalloc底层实现
java·前端·网络
森G1 小时前
七、04ledc-sdk--------makefile有变化
linux·c语言·arm开发·c++·ubuntu
驱动探索者1 小时前
linux mailbox 学习
linux·学习·算法
酉鬼女又兒3 小时前
每天一个Linux命令_printf
linux·运维·服务器
飞凌嵌入式3 小时前
用「EN 18031认证」通关欧盟,这张 “网络安全护照” 已就位
网络·安全·能源
Trouvaille ~3 小时前
TCP Socket编程实战(三):线程池优化与TCP编程最佳实践
linux·运维·服务器·网络·c++·网络协议·tcp/ip