TCP/IP协议族(TCP/UDP的区别)

TCP/IP协议族

介绍一下概念,TCP/IP协议是一个分层、多协议的通讯体系。

结构:TCP/ip协议族是一个四层协议系统,包括了数据链路层、网络层、传输层和应用层。

分层分析:

1、数据链路层:常用的协议是ARP协议(地址解析协议)和RARP协议(逆地址解析协议)。

2、网络层(两台通讯设备之间通讯的路由器):

IP协议(internet协议):根据数据包中的IP协议决定如何投递他,如果不能直接发给目标主机,那么IP协议就是选择合适的下一个路由器,交给路由器来转发,多次发送后仍未发送,就会因失败而丢弃。

ICMP协议(inertent控制报文的协议)

3、传输层三个重要的协议:TCP UDP SCTP协议。

TCP(传输控制协议):采用的是超时重传、数据确认等方式来确保数据可以可靠的传递。TCP协议的通讯是可靠的,使用是先必须建立链接,TCP服务采用的是基于流,基于流的数据是没有边界限制的,发送端可以源源不断的给里面写数据,而接收端可以一直从里面读数据(可以一个一个读)。

UDP协议(用户数据报协议):他为网路层提供不可靠、无连接和基于数据报的服务。”不可靠“:意味着数据无法保证数据可以准确的从发送端发送到接收端。在数据发送失败或者接受端接受不正确的,UDP只会简单的通知应用程序发送失败。那么应用程序自己得处理超时重传和数据确认等逻辑。每一次发送数据的时候都必须指定接收端的地址。UDP是基于报的,他的长度是有限的,接收端必须以最小的单位一次性都出来,否则数据将会被丢弃。

4、应用层:

ping:是应用程序,而不是协议,用于调试网络。

talnet:是一种远程登录协议。

OSPF(open shortset Path First 开放最短路径优先)动态路由更新协议,用于告诉对方路由协议。

DNS:域名服务

分享一个在腾讯课堂上tcp/ip的训练营的课程。

主要内容:
1. 如何实现单机百万连接;
2. 如何优化三次握手、四次挥手;
3. 如何优化TCP的传输速率;
4. nginx零拷贝技术的实现;
5. epoll原理剖析和面试必问的问题。

需要了解学习的朋友可以后台私信【tcp/ip】获取链接

相关文章

《Nginx 全功能应用大揭秘:十大场景示例详解》

Nginx 全场景应用:示例与解析在现代互联网架构中,Nginx 凭借其高性能、高并发处理能力以及丰富的功能特性,成为了不可或缺的基础设施组件。下面将详细介绍 Nginx 的各种应用场景,并给出对应的...

面试问到UDP,这样回答offer拿到手软

UDP协议,作为一个面试互联网公司几乎必问的题目,你真的有回答好吗?请你讲一下什么是UDP。请你说一下TCP和UDP的区别。请你说下UDP在哪些场景用到。请你说下UDP的特性。请你......(求求你...

开源推荐#7:Nginx 配置太复杂?试试这个可视化面板

大家好,我是 jonssonyan。Nginx 作为高性能的 Web 服务器和反向代理,在全球范围内被广泛使用。它功能强大、性能卓越,但对于不少开发者和运维人员来说,其基于文本的配置文件(.conf)...

(干货)Docker 快速入门,对比KVM有什么区别?如何安装与配置?

Docker优势说明更快的交付和部署使用docker 开发人员可以使用镜像来快速构建一套标准的开发环境;开发完成之后,测试和运维人员可以直接使用完全相同的环境来部署代码,只要开发测试过的代码,就可以确...

Linux C Socket UDP编程详解及实例分享

1、UDP网络编程主要流程UDP协议的程序设计框架,客户端和服务器之间的差别在于服务器必须使用bind()函数来绑定侦听的本地UDP端口,而客户端则可以不进行绑定,直接发送到服务器地址的某个端口地址。...

linux网络编程之socket:基于UDP协议的网络程序

一、下图是典型的UDP客户端/服务器通讯过程下面依照通信流程,我们来实现一个UDP回射客户/服务器ssize_t send(int sockfd, const void *buf, size_t le...