TCPIP协议基础知识学习笔记

本文涉及的产品
数据传输服务DTS,同步至DuckDB 3个月
简介: 快速学习TCP/IP协议基础知识

开发者学堂课程【TCP/IP 网络基础:TCP/IP协议基础知识】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/791


TCP/IP协议基础知识

内容简介

一、Internet的历史

二、网络的体系结构

三、OSI参考模型及TCP/IP参考模型

四、TCP和UDP协议

五、TCP三次/四次握手

六、UDP协议

七、协议的选择

一、Internet的历史

Internet——冷战的产物

网络互联促成TCP/IP协议的产生

二、网络的体系结构

网络采用分而治之的方法,将网络的功能划分为不同的模块,以分层的形式有机结合在一起。

每层实现不同的功能,其内部实现方法对外部其他层次来说是透明的,每层向上层提供服务,同时使用下层提供的服务。

网络体系结构即指网络的层次结构和每层所使用的协议的集合。

两类非常重要的体系结构:OSI与TCP/IP

三、OSI参考模型及TCP/IP参考模型

image.png

OSI参考模型及TCP/IP参考模型

OSI模型相关的协议已经很少使用,但模型本身非常通用

OSI模型一共有七层,是一个理想化的模型,但是尚未有完整的实现

TCP/ IP

协议一共有四层,是Internet事实上的工业标准。

四、TCP和UDP协议

image.png

是一种面向连接的传输层协议,它能提供高可靠性通信(即数据无误、数据无丢失、数 据无失序,数据无重复到达的通信)。

适用情况

1.适合于对传输质量要求较高,以及传输大量数据的通信

2.在可靠数据传输的场合,通常使用TCP协议。

3.MSN/QQ等即时通讯软件的用户登录账户管理相关的功能通常采用TCP协议。

五、TCP三次/四次握手

image.png

六、UDP协议

UDP (User Datagram Protocol)用户协议, 是不可靠的无连接协议。在数据发送前,因为不需要进行连接,所以可以进行高效率的数据传输。

使用情况

1.在接收到数据,给应答较困难的网络中使用UDP(如:无线网络)

2适合用于广播和组播通信当中。

3msn/qq/Skype 等即使通讯软件的点对点文本通讯以及音视频通讯通常采用UDP 协议。

4流媒体、VOD、VoP、IPTV等网络多媒体服务中通常采用UDP方式进行实时数据传输。

同时,一个UDP应用可同时作为应用的客户或服务器。由于UDP协议并不需要建立一个 明确的连接,因此建立UDP应用要比建立TCP应用简单得多。

七、协议的选择

TCP和UDP协议

协议的选择

(1)对数据可靠性的要求

对数据要求高可靠性的应用需选择TCP议,如验证、密码字段的传送都是不允许出

错的,而对数据的可靠性要求不那么高的应用可选择UDP传送。

(2)应用的实时性

TCP协议在传送过程中要使用三次握手,重传确认等手段来保证数据传输的可靠性

使用TCP协议会有较大的时延,因此不适合对实时性要求较高的应用,如VOP、视频监

控等,相反,UDP协议则在这些应用中能发挥很好的作用。

(3)网络的可靠性

由于TCP协议的提出主是解决网络的可靠性问题,它通过各种机制来减少错误发生的

概率。

因此,在网络状况不是很好的情况下需选用TCP协议(如在广域网等情况),但是若在网络状况很好的情况下(如局域网等)就不需要再采用TCP协议,而建议选择UDP协议。


相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
1月前
|
Java 编译器 API
告别样板代码:探索Java Record的简洁之力
告别样板代码:探索Java Record的简洁之力
170 113
|
9月前
|
机器学习/深度学习 人工智能 自然语言处理
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
343 6
|
网络虚拟化 数据安全/隐私保护 网络架构
|
Java Go 网络协议
grpc(3):使用 golang 开发 grpc 服务端和客户端
1,关于grpc-go golang 可以可以做grpc的服务端和客户端。 官网的文档: http://www.grpc.io/docs/quickstart/go.html https://github.com/grpc/grpc-go 和之前写的java的grpc客户端调用相同。也需要使用protobuf的配置文件。 但是golang下面的类库非常的简单,而且g
4693 0
|
Java Android开发
Android 通知栏系列....
转:http://blog.csdn.net/vipzjyno1/article/details/25248021       在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等。
1190 0
|
9天前
|
数据采集 人工智能 安全