IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 网络编程相关的基础知识 -> 正文阅读

[网络协议]网络编程相关的基础知识

网络协议


? ? ? ?网络协议规定了计算机之间连接的物理、机械、电器等特征,计算机之间的相互寻址规则,数据发送冲突的解决方式,长数据如何分段传送和接收等内容。这就像在世界上不同的国家之间,有不同的法律是一样的,目前在互联网中的网络协议也有很多种,其中最常见的就是IP协议和TCP以及UDP协议。

IP协议


????????IP是internet protocol的简称,是网络协议中的一种,internet网络采用的协议是TCP/IP协议,但是这个协议是绝对不可以小视的,因特网依靠TCP/IP协议在全球范围内实现了不同硬件结构、不同操作系统、不同网络系统之间的互联。在intertet网络中,存在着数以亿计的主机,每一台主机都用网络为其分配的intertete地址来代表自己主机本身,这个地址就是IP地址,所以我们也可以说IP地址就是某一台计算机的身份证号码。
????????并且TCP/IP模式是一种层次结构,一共有四层,分别为应用层,传输层互联网层和网络层,他们每一层都有自己所特定的功能,提供特定的服务和对应的访问接口,并且拒一定的独立性,这四层的关系如下图所示:? ? ? ? ? ?? ? ? ?

TCP与UDP协议


????????在TCP/UDP协议栈中,有两个高级协议是我们在进行网络应用程序的编写中应该要了解的,即传输控制协议TCP和用户数据报协议UDP。

????????TCP协议是一种以固接连线为基础的协议,它提供两台计算机间可靠的数据传输,TCP可以保证从一端数据送至连接的另一端时,数据能够准确送达,而且抵达的数据的排列顺序和送出时的顺序相同,

????????因此TCP协议适合可靠性要求非常高的场合,打个比方来说:这就像我们双方在打电话,我必须先拨号给对方,等两端确定连接之后,双方才能互相听到对方讲话,也能够知道对方用的是什么内容。

????????而UDP协议是无连接通信协议,不保证数据的可靠传输,但能够向若干个目标发送数据,或者接收来自若干个园的数据,UDP以独立发送数据包的方式进行,这种方式就像快递员送快递给客户,可以寄出很多个包裹给同一个人,每一个包裹都是相互独立的个包裹,送达的顺序并不重要,快递员小哥接收包裹的顺序也不能保证与愁包裹的顺序相同。

????????因此,UDP协议适用于一些对数据准确性要求不高,但对数据传输速度和时效性要求非常高的网络,例如我们常见的网络聊天室,在线影片等。

????????这其中的原因就是因为TCP协议在认证上存在额外耗费,可能是传输速度减慢,而UDP协议即使有一小部分数据包损失,或者传输顺序有所不同,也不会造成严重的危害该通信。

????????这也就是为什么常说TCP可靠而非安全,UDP安全而非可靠了。

端口和套接字

????????网络程序设计中的端口(Port)并非真实存在的,他只不过是一个假想的连接装置,端口被规定为在一个0~65535之间的整数。其实在端口上也有一定的讲究,如0~1023之间的端口,一般用于一些知名的网络服务和应用,而用户的普通网络应用程序应该使用1024以上的端口数,这样做的目的也是避免端口号与另一个应用或系统服务所用的端口所造成冲突。例如HTTP服务一般使用80端口,FTP服务使用21端口。

????????在网络程序中的套接字(Socket)表示用于将应用程序与端口连接起来,同样套接字也是一个假想的连接装置,我们在进行程序开发的时候,只需要创建Socket类对象,就可以使用套接字了。

?

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 01:01:36  更:2022-09-21 01:04:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 6:41:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码