首页 > 其他分享 >【计算机网络中的TCP/IP】TCP/IP协议中的tcp与udp

【计算机网络中的TCP/IP】TCP/IP协议中的tcp与udp

时间:2024-07-17 21:29:11浏览次数:10  
标签:协议 udp ACK IP TCP 服务端 客户端

目录

简单介绍一些TCP/IP协议

TCP/IP协议的组成

TCP/IP协议中tcp与udp的区别


1.简单介绍一下TCP/IP协议

          TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCPIP两个协议,而是指一个由FTPSMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。

2.TCP/IP协议的组成

          TCP/IP协议参考了OSI模型(Open System Interconnect),OSI模型共有七层,从下到上分别是物理层、数据链路层、网络层、运输层、会话层、表示层和应用层,而在TCP/IP协议中七层模型被简化成了四层模型,从下到上分别是链路层,网络层,传输层,应用层。下图为OSI模型与TCP/IP协议的图解:

         从上图可以看出TCP/IP协议可以说是简化版的OSI模型。在TCP/IP协议中的每层都各自不同的协议,它们都在各自的层域发挥这不同的作用,接下来我们来说一下传输层中的两个特别重要大的协议——TCP与UDP,以及它们的区别。

3.TCP/IP协议中tcp/udp的区别

        1.TCP协议(Transport Control Protocol)全称是传输控制协议是一种面向连接的、可靠的、基于字节流的传输层通信协议。

  当一台计算机想要与另一台计算机通讯时,两台计算机之间的通信需要畅通且可靠,这样才能保证正确收发数据。比如,当你传输文件时,你要求文件传输过程中保证文件完整的进行传输就需要用到TCP协议。TCP之所以有这样的作用是因为它的特殊传输机制:TCP协议在传输和建立的过程中采用了“三次握手”与“四次挥手”的机制。

  • 三次握手

1)建立连接时,客户端向服务端发送一个标志为SYN=1和一个序列号seq=j,客户端进入SYN_SENT状态,等待服务端的确认。

2)服务端收到来自客户端的SYN=1和seq=j,知道了想与自己产生连接,之后把SYN与ACK都置为1,让ack=j+1并产生一个随机的seq=k,将这些数据再次发给客户端以确认连接的请求,之后服务端进入SYN_RCVD状态。

3)客户端接收到来自服务端的数据并检查ACK是否为1和ack是否为j+1,如果正确将ACK设为1,seq=k+1,并将这些数据再次发给服务端,如果服务端接收到ACK=1,ack=k+1则正确,客户端与服务端都进入ESTABLISHED状态及建立连接成功。

1)客户端向服务端发送一个FIN=M来关闭客户端到服务端的数据传输,客户端进入FIN_WAIT1状态。

2)服务端接收到来自客户端的FIN数据,并发送一个ACK给客户端及ack=M+1,之后服务端进入CLOSE_WAIT状态。

3)服务端发送一个FIN=N用来关闭服务端到客户端的数据传输,服务端进入LAST_ACK状态。

4)客户端接收到服务端的数据FIN=N并进入TIME_WAIT状态,并发送一个ACK给客户端及ackN+1,服务端进入CLOSE状态。

上面就是“三次握手”,“四次挥手”的TCP机制,确保了在使用TCP协议的时候保证数据的完整性与连续性。下面是上述机制提出的问题

1.为什么是三次握手,四次挥手?少一次不行吗?

通俗点来讲就是双方必须都要知道对面已经收到自己的信息,假设A向B发送了一段信息然后B接收到了信息并向A回了一段确认信息,到了这里只进行了两次握手但这时A并没有向B回了一段确认信息,这样就导致B不知道A是否能够进行数据的传输,就导致不能够形成稳定的连接。“四次挥手同理”如果只进行三次挥手就导致B没有收到来自A的确认信息,就不能够有效的关闭它们之间的连接。

2.UDP协议(User Datagram Protocol)全称是用户数据报协议是一个简单的面向无连接的,不可靠的数据报的传输层协议。它只是把应用程序传给IP层数据报发送出去,但是并不能保证它们能到达目的地。因此报文可能会丢失、重复以及乱序等。但由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。

TCP协议与UDP协议对比的图解

 总的来说,TCP就像电话通信一样可以有稳定连续的数据传输,但它是专一的。而UDP更像是书信传递信息,它发过去之后并不知道接下来是否能够和对方建立有效的连接,但它可以像不同的对象发送信息。

标签:协议,udp,ACK,IP,TCP,服务端,客户端
From: https://blog.csdn.net/2201_75685905/article/details/140417784

相关文章

  • 关于Iphone的越狱、绕过激活锁ID相关知识备忘
    很少对苹果设备进行越狱,所以相关知识也不甚了解。这里记录一下备忘。恢复模式和DFU模式恢复模式(RecoveryMode)和DFU模式(DeviceFirmwareUpgradeMode)是苹果iOS设备中两种不同的维护和修复模式,主要用于在遇到软件问题时恢复设备。以下是两者的主要区别和用途:恢复模式(Recove......
  • 题解 P1031 [NOIP2002 提高组] 均分纸牌
    link贪心题中描述每一堆牌只能移动若干张牌到相邻的牌堆上确定了局部最优解必定能推导出全局最优解。易知均分完后,每堆牌的数量都为纸牌总数的平均数\(\mathrm{arg}\)。所以我们可以预处理每堆牌跟\(\mathrm{arg}\)的差距for(inti=1;i<=n;++i)sum+=a[i];......
  • TS 入门(七):TypeScript模块与命名空间
    目录前言回顾泛型编程1.模块a.导入和导出b.默认导出c.重命名导入和导出2.命名空间a.定义命名空间b.嵌套命名空间3.动态导入与条件导入a.动态导入b.条件导入结语前言在前几章中,我们学习了TypeScript的基础知识、函数与对象类型、接口与类、以及泛型编......
  • C#实现UDP组播
    接收端:publicclassUdpDemo{publicvoidRun(){Threadt=newThread(newThreadStart(RecvThread));t.IsBackground=true;t.Start();while(true){Thread.Sleep(1000);}}publ......
  • 常用的 JavaScript 数组处理方法
    1.map方法用于创建一个新数组,其结果是该数组中的每个元素调用一个提供的函数后返回的结果。letitems=[{id:1,name:'item1'},{id:2,name:'item2'},{id:3,name:'item3'}];letitemNames=items.map(item=>item.name);console.log(itemNames);......
  • TCP/IP网络模型详解
    在计算机网络领域,网络模型通常指的是OSI(OpenSystemsInterconnection)参考模型或TCP/IP(TransmissionControlProtocol/InternetProtocol)模型。这些模型描述了网络中数据传输的层次结构,便于理解和设计网络系统。1.OSI七层网络模型OSI(OpenSystemsInterconnection)七层网络......
  • 基于kube-vip创建k8s高可用集群
     所使用的环境如下:UbuntuServer20.04LTS(自从CentOS变成CentOSStream后就转用Debian/Ubuntu了)containerd1.5.5(k8s1.24之后就不再支持docker了,因此改用containerd)Kubernetesv1.23.5kube-vipv0.4.3(这里为了简单部署使用L2ARP方式)+-------------+--------------......
  • Javascript: Blob, File/FileReader, ArrayBuffer, ReadableStream, Response 转换方
    目录先上图各个ObjectArrayBuffer:Blob:File:FileReader:ReadableStream:Response用法举例ArrayBufferBlob,File,FileReaderReadableStream关于ReadableStream的一点总结Response构造函数Parametersblob()先上图各个ObjectArrayBuffer:1.ArrayBuffer是JavaScript......
  • IPv4地址划分与聚合方案之CIDR(无类域间路由)与VSLM(可变长子网掩码)
    目录基本概念:子网划分与聚合VLSM简介:CIDR简介:应用:1.IPv4子网聚合CIDR:2.IPv4子网划分VLSM与子网数计算:尾声:基本概念:首先IPv4子网划分是什么意思,我们先来讲讲IPv4地址的一个地址构造。比如,192.168.1.1/24,这是一个IPv4地址。子网掩码长度为24,化成点分十进制即为255......
  • NOIP2023
    坐标HA背景打完CSP-S后觉得自主招生稳了,就想着NOIP摆烂,所以此游记仅仅是为了凑数。正文Day0不出所料,机房统一集训,但是在CSP集训后导致的期中挂分的影响下,这一想法被家长以及whk老师\(AK\)了。所以直到周五晚上我还在搞whk。Day1.begin早上直接开车去,车上睡觉。......