当前位置:首页>经验>

tcp/ip协议和http协议(tcp/ip协议和http协议如何设置)

来源:原点资讯(m.360kss.com)时间:2022-10-29 23:23:29作者:YD166手机阅读>>

推荐阅读:

TCP/IP概念

TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇,同时是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。

我的理解:互联网中的设备要相互通信,必须基于相同的方式,比如由哪一方发起通讯,使用什么语言进行通讯,怎么结束通讯这些都要事先确定,不同设备之间的通讯都需要一种规则,我们将这种规则成为协议。

TCP/IP 的分层管理图

tcp/ip协议和http协议,tcp/ip协议和http协议如何设置(1)


TCP/IP协议中最重要的特点就是分层。由上往下分别为 应用层,传输层,网络层,数据链路层,物理层。当然也有按不同的模型分为4层或者7层的。

为什么要分层呢?在设计的角度来讲变得灵活了,当某一层需要修改时,只需要拿掉对相应的层,实现可拔插,无需变动所有层。对于使用者来讲,屏蔽了底层复杂的传输过程。

应用层

TCP/IP模型将OSI参考模型中的会话层和表示层的功能合并到应用层实现。这一层主要的代表有DNS域名解析/http协议

传输层

在TCP/IP模型中,传输层的功能是使源端主机和目标端主机上的对等实体可以进行会话。在传输层定义了两种服务质量不同的协议。即:传输控制协议TCP和用户数据报协议UDP.

网络层

网络层是整个TCP/IP协议栈的核心。它的功能是把分组发往目标网络或主机。同时,为了尽快地发送分组,可能需要沿不同的路径同时进行分组传递。因此,分组到达的顺序和发送的顺序可能不同,这就需要上层必须对分组进行排序。网络层定义了分组格式和协议,即IP协议(Internet Protocol )。

物理层

该层负责 比特流在节点之间的传输,即负责物理传输,这一层的协议既与链路有关,也与传输的介质有关。通俗来说就是把计算机连接起来的物理手段。

数据链路层

控制网络层与物理层之间的通信,主要功能是保证物理线路上进行可靠的数据传递。为了保证传输,从网络层接收到的数据被分割成特定的可被物理层传输的帧。帧是用来移动数据结构的结构包,他不仅包含原始数据,还包含发送方和接收方的物理地址以及纠错和控制信息。其中的地址确定了帧将发送到何处,而纠错和控制信息则确保帧无差错到达。如果在传达数据时,接收点检测到所传数据中有差错,就要通知发送方重发这一帧。

UDP 和 TCP 的特点:
  • 用户数据报协议 UDP(User Datagram Protocol):无连接;尽最大努力的交付;面向报文;无拥塞控制;支持一对一、一对多、多对一、多对多的交互通信;首部开销小(只有四个字段:源端口、目的端口、长度、检验和)。UDP是面向报文的传输方式是应用层交给UDP多长的报文,UDP发送多长的报文,即一次发送一个报文。因此,应用程序必须选择合适大小的报文。
  • 传输控制协议 TCP(Transmission Control Protocol):面向连接;每一个TCP连接只能是点对点的(一对一);提供可靠交付服务;提供全双工通信;面向字节流。应用程序和TCP的交互是一次一个数据块(大小不等),但TCP把应用程序看成是一连串的无结构的字节流。TCP有一个缓冲,当应该程序传送的数据块太长,TCP就可以把它划分短一些再传送。

UDP的首部格式:

tcp/ip协议和http协议,tcp/ip协议和http协议如何设置(2)

用户数据报有两个字段:数据字段和首部字段,数据字段很简单,只有8个字节,由四个字段组成,每个字段的长度都是两个字节。各字段意义如下:

  1. 源端口:源端口号,在需要给对方回信时使用。不需要是可全用0.
  2. 目的端口号:这在终点交付报文时必须使用。
  3. 长度:用户数据报UDP的长度,最小为8(仅首部)。
  4. 校验和:用于校验用户数据报在传输过程是否出错,出错则丢弃该报文。
TCP报文首部格式:

tcp/ip协议和http协议,tcp/ip协议和http协议如何设置(3)

源端口和目的端口:各占两个字节,分别写入源端口号和目的端口号。
序号 :占4个字节;用于对字节流进行编号,例如序号为 301,表示第一个字节的编号为 301,如果携带的数据长度为 100 字节,那么下一个报文段的序号应为 401。
确认号 :占4个字节;期望收到的下一个报文段的序号。例如 B 正确收到 A 发送来的一个报文段,序号为 501,携带的数据长度为 200 字节,因此 B 期望下一个报文段的序号为 701,B 发送给 A 的确认报文段中确认号就为 701。
数据偏移 :占4位;指的是数据部分距离报文段起始处的偏移量,实际上指的是首部的长度。
确认 ACK :当 ACK=1 时确认号字段有效,否则无效。TCP 规定,在连接建立后所有传送的报文段都必须把 ACK 置 1。
同步 SYN :在连接建立时用来同步序号。当 SYN=1,ACK=0 时表示这是一个连接请求报文段。若对方同意建立连接,则响应报文中 SYN=1,ACK=1。
终止 FIN :用来释放一个连接,当 FIN=1 时,表示此报文段的发送方的数据已发送完毕,并要求释放连接。
窗口 :占2字节;窗口值作为接收方让发送方设置其发送窗口的依据。之所以要有这个限制,是因为接收方的数据缓存空间是有限的。
检验和:占2个字节;检验和字段检验的范围包括首部和数据这两个部分。在计算检验和时,在TCP报文段的前面加上12字节的伪首部。
套接字:TCP连接的端点叫做套接字或插口。端口号拼接到IP地址即构成了套接字。

面试灵魂拷问

TCP的三次握手与四次挥手:

  1. 第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。
  2. 第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=J 1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。
  3. 第三次握手:Client收到确认后,检查ack是否为J 1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K 1,并将该数据包发送给Server,Server检查ack是否为K 1,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,完成三次握手,随后Client与Server之间可以开始传输数据了。

tcp/ip协议和http协议,tcp/ip协议和http协议如何设置(4)

首页 1 2 3 下一页

栏目热文

plc通过tcpip协议读取第三方设备(plc能使用tcpip协议通信吗)

plc通过tcpip协议读取第三方设备(plc能使用tcpip协议通信吗)

西门子PLC中MB_SERVER_DB使用方法分享该块是实现PLC与第三方设备进行TCP/IP通讯功能块。本文以PC作为...

2022-10-29 23:38:21查看全文 >>

tcpip 协议详细讲解(图解tcp ip协议)

tcpip 协议详细讲解(图解tcp ip协议)

又到了金三银四的时间,阿粉也是有点蠢蠢欲动,想要准备面试一下,检验一下自己的工作水平了,于是阿粉就开始了改改简历,然后想...

2022-10-29 23:21:51查看全文 >>

tcpip协议图解(tcpip五层协议详解)

tcpip协议图解(tcpip五层协议详解)

什么是TCP/IP协议?计算机与网络设备之间如果要相互通信,双方就必须基于相同的方法.比如如何探测到通信目标.由哪一边先...

2022-10-29 23:31:04查看全文 >>

tcpip协议详解入门(tcpip协议简单讲解)

tcpip协议详解入门(tcpip协议简单讲解)

这是一本图文并茂的网络管理技术书籍,旨在让广大读者理解TCP/IP的基本知识、掌握TCP/IP的基本技能。文章中讲解了网...

2022-10-29 23:49:36查看全文 >>

tcpip协议与osi协议功能有区别吗(我们现在用的是tcpip还是osi协议)

tcpip协议与osi协议功能有区别吗(我们现在用的是tcpip还是osi协议)

tcp/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:应用层:应用...

2022-10-29 23:22:29查看全文 >>

通俗解释tcpip协议(图解tcp-ip协议)

通俗解释tcpip协议(图解tcp-ip协议)

近期工作,跟网络协议相关,这让我有机会更深入学习网络协议,而之前很长一段时间,我对网络协议的理解都停留在比较浅的层面。比...

2022-10-29 23:09:06查看全文 >>

图解tcpip协议详解(图解tcp ip协议)

图解tcpip协议详解(图解tcp ip协议)

文:涤生_Woo下周就开始和大家成体系的讲hadoop了,里面的每一个模块的技术细节我都会涉及到,希望大家会喜欢。当然了...

2022-10-29 23:49:12查看全文 >>

tcp的三次握手(tcp连接的三次握手过程)

tcp的三次握手(tcp连接的三次握手过程)

作者 | AhuntSun责编 | ElleTCP connection 客户端与服务器之间数据的发送和返回的过程当中需...

2022-10-29 23:37:17查看全文 >>

ip地址基础入门知识(弱电入门必背的知识)

ip地址基础入门知识(弱电入门必背的知识)

一、IP地址简介1、IP地址的分类和表示IP 地址就是给每个连接到 IPv4 网络上的设备分配的一个网络唯一的地址。IP...

2022-10-29 23:36:13查看全文 >>

tcpipv6如何设置(路由器ipv6需要打开吗)

tcpipv6如何设置(路由器ipv6需要打开吗)

作为一位多年的nas用户,如果问我最大的痛点是什么?我会选远程访问:内网的nas设置其实很简单,但涉及到外网访问难度就会...

2022-10-29 23:54:18查看全文 >>

文档排行