通信工程学习:什么是TCP/IP(传输控制协议/互联网议)

TCP/IP:传输控制协议/互联网议

**TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/互联网协议)是互联网的基本协议,也是国际互联网络的基础。它不仅仅是一个协议,而是一个协议族,包括多个网络协议,如IP、ICMP、TCP、UDP、HTTP、FTP、SMTP等。**这些协议共同定义了计算机操作系统如何连入互联网,以及数据如何在它们之间传输的标准。

一、TCP/IP协议族的主要协议

1、IP协议(Internet Protocol):

定义了互联网上的唯一标识符(IP地址),并负责数据包的路由和转发。

是一种无连接、不可靠的分组传送服务的协议,是点-点线路的网络层通信协议。

2、TCP协议(Transmission Control Protocol):

提供可靠的、面向连接的数据传输。

确保数据以正确的顺序到达目标,并具有错误检测和重传机制。

通过三次握手建立连接,通讯完成时要拆除连接,只能用于端到端的通讯。

3、UDP协议(User Datagram Protocol):

提供无连接的、不可靠的数据传输。

适用于一些实时应用程序,如音频和视频流,因为它不需要TCP的排序和流量控制等功能。

4、ICMP协议(Internet Control Message Protocol):

用于网络故障诊断和错误报告。

提供有关通向目的地址的路径信息,如"Redirect"信息通知主机通向其他系统的更准确的路径,"Unreachable"信息则指出路径有问题。

5、其他协议:

HTTP(Hypertext Transfer Protocol):用于在Web上传输超文本文档,是万维网的基础。

FTP(File Transfer Protocol):用于文件传输。

SMTP(Simple Mail Transfer Protocol):用于电子邮件的发送。

DNS(Domain Name System):用于将域名解析为IP地址。

二、TCP/IP协议的层次结构

TCP/IP协议族按照层次由上到下分成4层,分别是应用层、传输层、网络层和网络接口层(或称数据链路层)。

1、应用层:

包含所有的高层协议,如HTTP、FTP、SMTP、DNS等。

2、传输层:

包括TCP和UDP协议,负责端到端的数据传输。

3、网络层:

主要是IP协议,负责数据包的路由和转发。

4、网络接口层:

负责接收IP层的数据报,通过网络向外发送,或接收从网络上来的物理帧,抽出IP数据报,向IP层发送。

三、TCP/IP协议的工作流程

以浏览某个网页为例,TCP/IP协议各层的工作流程如下:

1、应用层:

在应用层,浏览器将网址等信息组成HTTP数据,并将数据传送给传输层。

2、传输层:

传输层在数据前面加上TCP报头,并标记端口为80(Web服务器的默认端口),将这个数据段给了网络层。

3、网络层:

网络层在这个数据段前面加上自己机器的IP和目的IP,这时该段被称为IP数据报,然后将这个IP数据报给了数据链路层。

4、网络接口层:

数据链路层先在IP数据报前面加上自己机器的MAC地址以及目的MAC地址,加上MAC地址的数据称为帧,然后通过物理网卡把这个帧以比特流的方式发送到网络上。

四、TCP/IP协议的重要性

**TCP/IP协议是互联网的基础,它定义了电子设备如何连入互联网,以及数据如何在它们之间传输的标准。不同系统的计算机采用了同一种协议后,就能相互通信,从而能够建立网络连接,实现资源共享和网络通信。**TCP/IP协议的发展和应用,极大地推动了互联网的普及和发展。

相关推荐
LK_071 小时前
【FastAPI】基础篇 01|开始之前:API、HTTP 与 FastAPI 到底是什么
网络协议·http·fastapi
say_fall1 小时前
【Linux网络编程】计算机网络基础:局域网与广域网、OSI七层模型与TCP/IP五层模型、封装解包与MAC/IP地址、端口号与socket编程接口
linux·网络·tcp/ip·计算机网络·信息与通信
阿星_1 小时前
pydio登陆不了分析问题
网络协议·http·https
橙橙笔记1 小时前
QT的学习第四部分
linux·qt·学习·音视频
Joy T2 小时前
Gzip 压缩原理与实践:HTTP 响应压缩、性能收益与工程配置
网络·网络协议·http
叼烟扛炮2 小时前
Linux 学习笔记(五十四):内网穿透实战——用 frp 让外网访问你的私人电脑
linux·服务器·网络·笔记·学习
在猴站学算法2 小时前
(《统计学习方法》(第2版) 李航)第2章 感知机算法
学习·算法·机器学习·统计学习
旖旎夜光2 小时前
【C++ 基础入门】C++ 继承(上):概念、切片、隐藏、默认成员函数与友元
c++·笔记·学习
Godspeed Zhao2 小时前
从零开始学AI24——无监督学习之K均值
学习·机器学习
叼烟扛炮2 小时前
[LangChain] 学习笔记(05):提示词模板(Prompt)与少样本注入(Few-Shot)实战
linux·人工智能·笔记·学习·langchain·prompt