美文网首页
第二十周

第二十周

作者: javaBoy_hw | 来源:发表于2018-06-14 15:03 被阅读0次

二十周

网络的五层划分是什么?TCP和UDP的区别是什么?简述TCP的三次握手过程。

五层划分是什么?

五层划分是将计算机网络体系机构分层为:应用层、运输层、网络层、数据链路层、物理层。

由于OSI的七层协议体系,复杂又不实用;而TCP/IP协议体系(又称协议族)每层处理内容复杂,不易理解。故综合上述两种提出了5层协议体系为新人讲解网络原理,实际应用中没有此体系。

应用层(application layer)

应用层任务是:通过应用进程间交互来完成特定网络应用。不同的网络应用有不同的应用层协议。如万维网的HTTP协议、支持电子邮件的SMTP协议。应用层交互的数据单元常称为“报文”。

运输层(transport layer)

运输层任务是:为两个主机中进程之间的通信提供通用的数据传输协议。所谓通用,是强调多种应用可以使用同一个运输层服务,因为日常中一台主机常有多个进程。运输层主要使用的协议是:TCP和UDP。

运输层有复用和分用的概念。

网络层(network layer)

网络层任务是:为分组交换网上的不同主机提供通信服务,服务具体是指,把运输层产生的报文段或用户数据报封装成“分组”或“包”进行传送;另一个功能是选择合适的路由,使运输层传下来的分组能够通过路由器找到目的主机。大名鼎鼎的IP协议就属于该范畴。

数据链路层(data link layer)

链路层任务是:将网络层交下来的IP数据报组装成帧(framing),传送到链路的下个节点。

物理层(physical layer)

物理层任务是:发送方发送的比特,接收方如何无误接受。用多大的电压代表比特。物理层还需要处理电缆的插头该有多少根引脚及各引脚应如何连接。但具体的物理层实现并不在物理层协议内,如同轴电缆,无线信道等。

运输层基本概念

复用:应用层所有的应用进程都可以通过运输层再传送到网络层(IP层)。

分用:从网络层收到数据后必须明确交付指明的应用进程。

协议端口:简称端口(protocol port )。虽然通信的终点是应用进程,但我们只要把需传送的报文交到目的主机的某一个合适的目的端口,剩下的工作交由TCP或UDP来完成。

UDP和TCP的首部格式中,都有源端口和目的端口两个字段。当运输层收到IP层交上来的运输层报文时,就能根据目的端口把数据交付应用层的目的应用进程。TCP/IP的运输层用一个16位端口号来标志一个端口。端口号只有本地意义,是标志本计算机应用层中的进程和运输层交互时的层间接口。在因特网中,相同的端口号是没有关联的。

计算机中进程相互通信,不仅必须知道对方的IP地址,还要知道对方的端口号。因此,运输层的端口号共分为两大类:服务器端使用的端口号和客户端使用的端口号。

服务器端使用的端口号

又分两类:熟知端口号和登记端口号。

熟知端口号,数值为0~1023,IANA把这些端口指派给了TCP/IP最重要的一些应用程序,当出现一种新的应用程序后IANA就为它指派一个熟知端口。常见熟知端口如下:

常见熟知端口

另一类登记端口:数值为1024~49151,此类端口是为没有熟知端口号的应用提供的。使用此类端口必须在IANA按规定手续登记。

客户端使用的端口号

客户端使用的端口号,数值为49152~65535,此类端口仅在客户进程运行时才动态选择。

TCP简介

TCP(Transmission Control Protocol)传输控制协议。面向连接的、可靠的数据传输服务(尽管下层线路仍是不可靠的)。

TCP特点

TCP特点

PS:TCP的连接、可靠传输的工作原理、可靠传输的实现、TCP的流量控制、TCP的拥塞控制、运输连接管理都有相关知识,另外开篇整理。

UDP(User Datagram Protocol)

UDP是用户数据报协议。无连接的,不保证传输可靠性的传输服务。UDP只在IP数据服务之上增加了复用和分用的功能及差错检测的功能。

UDP特点

UDP特点

UDP首部格式

用户数据报UDP有两个字段:数据字段和首部字段。首部由8个字节,4个字段组成,一个字段两个字节。

  1. 源端口 -- 在需要对方回信时使用。不需要时可用全0;
  2. 目的端口 -- 在终点交付报文时必须使用到;
  3. 长度 -- UDP用户数据报的长度,最小是8(仅有首部);
  4. 检验和 -- 检测UDP用户数据报在传输中是否有错。

[图片上传失败...(image-7b5b36-1528963145287)]

PS: 伪首部只在计算检验和时临时添加,既不向上传送要不向下递交。

TCP和UDP的区别是什么?

  1. 从连接角度考虑:TCP是面向连接,UDP是无连接的;
  2. 从可靠性上:TCP能保证可靠交付,UDP是尽最大努力交付;
  3. 传输数据格式上:TCP是面向字节流的,UDP是面向报文的;

简述TCP的三次握手过程?

TCP的连接建立过程叫做三次握手(three-way handshake)。

一:客户端向服务器发出连接请求报文段,首部中的同步位SYN=1,同时选择初始序号seq = x。客户端进入SYN-SENT(同步已发送)状态。

二:服务器收到请求报文后,如同意建立连接,则向A发送确认。在确认报文中应把SYN位和ACK位置1,确认号是ack = x + 1,选择自己的初始化序号seq = y。服务器进程进入SYN-RCVN(同步已收到)状态。

三:客户端收到服务器的确认后,再向B给出确认。此时TCP连接建立,客户端进入ESTABLISHED(已建立连接)状态。

当服务器收到客户端的确认后,也进入ESTABLISHED状态,即可进行数据传输。

PS:为何需要对服务器进行确认呢?客户端发出的请求可能因为延误,在连接释放后才到达服务器,此时服务器建立连接会导致服务器资源浪费。

相关文章

  • 第二十周

    二十周 网络的五层划分是什么?TCP和UDP的区别是什么?简述TCP的三次握手过程。 五层划分是什么? 五层划分是...

  • 第二十周

    五月四日 星期一 青年节 每个人的生命最终都会变成一只空篮子,盛放的所有事物都会化作云烟,世界只不...

  • 第二十周

    见 承认自己无能为力很难,可悖论是,一旦承认在某些事上无能为力,你所能做的,反而多了。 ...

  • 第二十周

    忙碌的一周就要结束。 完成一个任务有一个任务。生活生活,活不断地生出来的。今天终于完成了送教下乡。晚上又有新任务来...

  • 第二十周

    第十九周和第二十周是比较浑浑噩噩的两周。我对自己出来创业产生了质疑。我没有走出自己的舒适区,也没有很好的进行自我修...

  • 第二十周

    1、搭建Tomcat集群,并通过nginx反向代理访问 测试环境: Nginx: 172.16.100.151 T...

  • 第二十周

    不知不觉已经第二十周了,下周就要期末考试了。 首先就是语文,语文每次都只能六十出头,从来就没有高过,...

  • 第二十周

    这是考试前的最后一周了 一门考察科目还没考, 剩下的还有五门科目,语文方面发了几张复习试卷有30几分的答案怎么说考...

  • 第二十周

    时光如梭,这个学期的学习再过一个礼拜就结束了,所以下礼拜就期末考试了。每门课程都划了重点发了试卷,都说考的内容和...

  • 第二十周

    时间过得真快,转眼就第二十周了,这周所有科目都进入了复习阶段,一些考查课,如毛泽东思想还有工程力学也都结束了,考...

网友评论

      本文标题:第二十周

      本文链接:https://www.haomeiwen.com/subject/fojyeftx.html