第二十周

二十周

网络的五层划分是什么?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:为何需要对服务器进行确认呢?客户端发出的请求可能因为延误,在连接释放后才到达服务器,此时服务器建立连接会导致服务器资源浪费。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,951评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,606评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,601评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,478评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,565评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,587评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,590评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,337评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,785评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,096评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,273评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,935评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,578评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,199评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,440评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,163评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,133评论 2 352

推荐阅读更多精彩内容

  • 运输层协议概述 从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是...
    srtianxia阅读 2,405评论 0 2
  • 1.这篇文章不是本人原创的,只是个人为了对这部分知识做一个整理和系统的输出而编辑成的,在此郑重地向本文所引用文章的...
    SOMCENT阅读 13,060评论 6 174
  • 个人认为,Goodboy1881先生的TCP /IP 协议详解学习博客系列博客是一部非常精彩的学习笔记,这虽然只是...
    贰零壹柒_fc10阅读 5,052评论 0 8
  • 18.1 引言 TCP是一个面向连接的协议。无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。本章将...
    张芳涛阅读 3,364评论 0 13
  • 本章讨论TCP/IP体系中运输层最重要的两种协议:UDP和TCP。必须弄清TCP的各种机制(如面向连接的可靠服务、...
    dmmy大印阅读 933评论 0 0