简单了解几种常见的网络通信协议
常见的网络协议有:TCP/IP协议、UDP协议、HTTP协议、FTP协议、Telnet协议、SMTP协议、NFS协议等。这里主要简述一下前三种协议。
一.TCP/IP协议
1.什么是TCP/IP协议?
TCP/IP传输协议,即传输控制/网络协议,也叫作网络通讯协议。它是在网络的使用中的最基本的通信协议。TCP/IP传输协议对互联网中各部分进行通信的标准和方法进行了规定。并且,TCP/IP传输协议是保证网络数据信息及时、完整传输的两个重要的协议。
2.TCP/IP协议的组成
TCP/IP协议由四个层次组成:
应用层:应用层是TCP/IP协议的第一层,是直接为应用进程提供服务的。
(1)对不同种类的应用程序它们会根据自己的需要来使用应用层的不同协议,邮件传输应用使用了SMTP协议、万维网应用使用了HTTP协议、远程登录服务应用使用了有TELNET协议。
(2)应用层还能加密、解密、格式化数据。
(3)应用层可以建立或解除与其他节点的联系,这样可以充分节省网络资源。
运输层:作为TCP/IP协议的第二层,运输层在整个TCP/IP协议中起到了中流砥柱的作用。且在运输层中,TCP和UDP也同样起到了中流砥柱的作用。
网络层:网络层在TCP/IP协议中的位于第三层。在TCP/IP协议中网络层可以进行网络连接的建立和终止以及IP地址的寻找等功能。
网络接口层:在TCP/IP协议中,网络接口层位于第四层。由于网络接口层兼并了物理层和 数据链路层所以,网络接口层既是传输数据的物理媒介,也可以为网络层提供一条准确无误的线路。
3.TCP/IP协议的特点
(1)协议标准是完全开放的,可以供用户免费使用,并且独立于特定的计算机硬件与操作系统。
(2)独立于网络硬件系统,可以运行在广域网,更适合于互联网。
(3)网络地址统一分配,网络中每一设备和终端都具有一个唯一地址。
(4)高层协议标准化,可以提供多种多样可靠网络服务。
二.UDP协议
1.什么是UDP协议?
Internet 协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP,User Datagram Protocol)。UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。RFC 768描述了 UDP。
Internet 的传输层有两个主要协议,互为补充。无连接的是 UDP,它除了给应用程序发送数据包功能并允许它们在所需的层次上架构自己的协议之外,几乎没有做什么特别的事情。面向连接的是 TCP,该协议几乎做了所有的事情。
2.UDP协议的报文格式
在UDP协议层次模型中,UDP位于IP层之上。应用程序访问UDP层然后使用IP层传送数据包。IP数据包的数据部分即为UDP数据包。IP层的报头指明了源主机和目的主机地址,而UDP层的报头指明了主机上的源端口和目的端口。UDP传输的段(segment)有8个字节的报头和有效载荷字段构成。
UDP报头由4个域组成,其中每个域各占用2个字节,具体包括源端口号、目标端口号、数据包长度、校验值。
3. UDP协议的特点
(1)UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。
(2)由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。
(3)UDP信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包而言UDP的额外开销很小。
(4)吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。
(5)UDP是面向报文的。发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付给IP层。既不拆分,也不合并,而是保留这些报文的边界,因此,应用程序需要选择合适的报文大小。
三.HTTP协议
1.什么是HTTP协议?
超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而消息内容则具有一个类似MIME的格式。
2.HTTP的工作原理
HTTP是基于客户/服务器模式,且面向连接的。典型的HTTP事务处理有如下的过程:
(1)客户与服务器建立连接;
(2)客户向服务器提出请求;
(3)服务器接受请求,并根据请求返回相应的文件作为应答;
(4)客户与服务器关闭连接。
3.HTTP协议的运作方式
在WWW中,“客户”与“服务器”是一个相对的概念,只存在于一个特定的连接期间,即在某个连接中的客户在另一个连接中可能作为服务器。基于HTTP的客户/服务器模式的信息交换过程,它分四个过程:建立连接、发送请求信息、发送响应信息、关闭连接。
4. HTTP协议的报文格式
HTTP报文由从客户机到服务器的请求和从服务器到客户机的响应构成。请求报文格式如下:
请求行 - 通用信息头 - 请求头 - 实体头 - 报文主体
请求行以方法字段开始,后面分别是URL字段和HTTP协议版本字段,并以CRLF结尾。SP是分隔符。除了在最后的CRLF序列中CF和LF是必需的之外,其他都可以不要。有关通用信息头,请求头和实体头方面的具体内容可以参照相关文件。
应答报文格式如下:
状态行 - 通用信息头 - 响应头 - 实体头 - 报文主体
状态码元由3位数字组成,表示请求是否被理解或被满足。原因分析是对原文的状态码作简短的描述,状态码用来支持自动操作,而原因分析用来供用户使用。客户机无需用来检查或显示语法。有关通用信息头,响应头和实体头方面的具体内容可以参照相关文件。
5.HTTP的状态消息
HTTP状态码大致分为5类:
1xx : 消息,这一类型的状态码,代表请求已被接受,需要继续处理。但是一般服务器禁止向客户端发送此类状态码;
2xx : 成功,这一类型的状态码,代表请求已成功被服务器接收、理解、并接受;
3xx : 重定向,这类状态码代表需要客户端采取进一步的操作才能完成请求;
4xx : 请求错误,这类的状态码代表了客户端看起来可能发生了错误,妨碍了服务器的处理;
5xx : 服务器错误,这类状态码代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。
6.HTTP协议的特点
1、无状态协议,HTTP协议对于事务处理没有记忆能力
2、无连接,限制每次连接只处理一个请求
3、HTTP协议支持客户和服务器模式
4、HTTP协议非常的灵活,允许传输任意类型的数据对象
5、HTTP协议非常的简单快速,客户向服务器请求服务的时候,只要传送请求方法和路径
简单了解几种常见的网络通信协议相关推荐
- 几种常见的网络摄像头_DVR方案_整理
几种常见的网络摄像头_DVR方案_整理 http://blog.csdn.net/ex_net/article/details/7833334 作者:张建波 邮箱: 281451020@qq.com ...
- 计算机的网络拓扑结构有几种,常见的网络拓扑结构有哪几种
常见的网络拓扑结构有:1.星型拓扑结构:2.总线拓扑结构:3.环形拓扑结构:4.树形拓扑结构:5.网形拓扑结构:6.混合式拓扑结构.其中网形拓扑结构应用最广泛,不受瓶颈问题和失效问题的影响. 计算机网 ...
- 网络营销方法:15种常见的网络营销方式
网络营销目前总体分为15大形式:即搜索引擎营销.即时通讯营销.网络病毒式营销.BBS营销.网络博客营销.聊天群组营销.网络知识性营销.网络事件营销.网络口碑营销.网络直复性营销.网络视频营销.网络图片 ...
- 简单实现几种常见的前端效果,附代码!
小伙伴们在参加web前端工程师面试的时候会遇到面试官问到几种比较常见的效果如何去实现,这里小千就来给大家整理了一下,快来看~ 1.防抖 2.节流 3.new 4.bind 5.deepCopy 6.柯 ...
- 市面上几种常见的网络推广方式
互联网的红利众人所知,不用过多描述. 企业纷纷转型互联网+已是常态.线上的推广方式也层出不穷,共同目的都是推广引流,提高网站/品牌的曝光率,从而实现流量变现. 目前普遍存在的情况,不少企业主拼命的在线 ...
- 3.网络通信协议分类
通信的协议还是比较复杂的,java.net包中包含的类和接口,它们提供低层次的通信细节.我们可以直接使用这些类和接口,来专注于网络程序的开发,而不用考虑通信的细节. java.net包中提供了两种常见 ...
- 22.1 网络编程:软件结构、网络通信协议、UDP与TCP协议、(网络编程三要素:协议、ip地址、端口号)、查看ip地址、检测网络是否连通、判断ip是否可用
目录 网络编程 软件结构 网络通信协议 TCP/IP协议 协议分类 UDP TCP 网络编程三要素 协议 IP地址 列:查看本机ip地址 检查网络是否连通.判断ip是否可用 端口号 网络编程 软件结构 ...
- 几种常用的网络路由交换协议【路由协议】
几种常见的网络路由交换协议 1.IGRP(Interior Gateway Routing Protocol)内部网关协议. IGRP即内部网关协议,是一种动态距离向量路由协议,它由Cisco公司80 ...
- Web 3.0 中常见的网络钓鱼攻击
Web 3.0 中常见的网络钓鱼攻击 简要介绍 Web 3的网络钓鱼日益增多,一些主要的网络钓鱼技术包括: 使用不安全的Discord机器人在一些官方的Discord服务器上发布钓鱼链接: 直接发送钓 ...
- 天猫电视盒子服务器响应错误,天猫魔盒网络故障汇总:简单设置恢复连接|天猫魔盒网络异常,天猫魔盒,天猫魔盒网络掉线...
说起电视盒子,相信大家一定会想到天猫魔盒.作为一款颇为人性化的电视盒子,天猫魔盒以其海量的网络视频资源与稳定的系统设定而备受用户们的喜爱.而对于大多数的盒子用户来说,碰到最多的问题,莫过于盒子的网络异 ...
最新文章
- MySQL中如何通过修改表实现约束的添加与删除
- 将std::string字符串格式的数字转换为int类型的数字
- (转)jquery基础教程七 选择器(selectors 的xpath语法应用)
- 选课中应用Redis一些思考
- 详细介绍各种常见的分布
- AE中图层叠加模式的中英对照及说明
- Cronbach’s α?KMO系数?因子载荷?史上最易懂的问卷信效度分析教程!!!(SPSS和AMOS)
- PostgresSQL 使用实践
- 谈谈自由之刃游戏代理推广感受
- 看他如何做到4年2个博士学位,做研究、出书挣钱两不误。
- 客户端负载均衡Ribbon
- 三层交换技术..使用三层交换技术实现VLAN间通信
- MYSQL没有id字段的坑
- 在Unity中实现基于粒子的水模拟(三:混合屏幕)
- 邻居好说话:冒泡排序
- windows 服务器多网卡设置路由
- 复星金服微服务_复星金服打造“爱妈妈”互助共享平台,解决职场妈妈的后顾之忧...
- 2020年的网站SEO最新实操方法!5年老站长经验之谈!
- 【哲学心理学】何为占有欲?何为真爱?
- Nature综述:Rob Knight手把手教你分析菌群数据(全文翻译1.8万字)