TLS

安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。

该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。

TLS握手协议

TLS握手协议使双方(服务器和客户端)在应用协议层(如HTTP,SMTP等)传输或接收到数据的第一个字节前,就记录层(TLS记录协议)的安全参数达成一致,鉴别彼此(交换密钥),事例安全参数和向彼此报告错误情况。

安全参数实际上根据对话标识符,证书(X509v3),压缩方式,密码规格(bulk加密算法和MAC算法),主密钥和回复标记产生。RFC2246中定义了TLS握手协议。

TLS记录协议

是一种分层协议,这种协议被用来封装几种高层协议(如HTTP,SMTP等)。使用有TLS握手协议产生的安全参数,它首先将上层被传输的数据分片成便于管理的块,然后对数据有选择性地压缩,计算出消息认证码MAC(如MD5或SHA),加密(如NULL,DES,3DES等),最后将结果送出。接收到的数据经过解密,校验,解压缩,重组后被传输到上层客户端。RFC2246中定义了TLS记录协议。

TCP/IP五层模型

应用层,传输层,网络层,数据链路层,物理层

物理层:中继器、集线器、还有我们通常说的双绞线也工作在物理层

数据链路层:网桥(现已很少使用)、以太网交换机(二层交换机)、网卡(其实网卡是一半工作在物理层、一半工作在数据链路层)

网络层:路由器、三层交换机

传输层:四层交换机、也有工作在四层的路由器

OSI七层模型

OSI中的层功能 TCP/IP协议族

应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet

表示层 数据格式化,代码转换,数据加密 没有协议

会话层 解除或建立与别的接点的联系 没有协议

传输层 提供端对端的接口 TCP,UDP

网络层 为数据包选择路由 IP,ICMP,RIP,OSPF,BGP,IGMP

数据链路层 传输有地址的帧以及错误检测功能 SLIP,CSLIP,PPP,ARP,RARP,MTU

物理层 以二进制数据形式在物理媒体上传输数据 ISO2110,IEEE802,IEEE802.2

一,传输层协议

1、TCP

TCP(Transmission Control Protocol),即传输控制协议,是一种面向连接的、可靠的、面向字节流的、全双工的传输层通信协议。

tcp头部格式如下图所示:

数据部分加在头部后面

1.源端口,16位,发送方的端口号。源端口和IP地址的作用是标识报文的返回地址。

2.目的端口,16位,目的端口指明接收方计算机上的应用程序接口。

TCP报头中的源端口号和目的端口号同IP数据报中的源IP与目的IP唯一确定一条TCP连接。

3. 32位序列号,sequence number,保证网络传输数据的顺序性。

4. 32位确认号,acknowledgment number,用来确认确实有收到相关封包,内容表示期望收到下一个报文的序列号,用来解决丢包的问题。

5. 头部大小:4位,偏移量:最大值为0x0F,即15,

单位为32位(bit),单位也就是4个字节,给出头部占32bit的数目。没有任何选项字段的TCP头部长度为20字节;最多可以有60(15*4)字节的TCP头部。

6.   Reserved  4位 ,预留字段,都为0

7.  TCP标志位

(1)CWR:Congestion window reduced,拥塞窗口减少。拥塞窗口减少标志被发送主机设置,用来表明它接收到了设置ECE标志的TCP包。拥塞窗口是被TCP维护的一个内部变量,用来管理发送窗口大小。

(2)ECN-Echo:显式拥塞提醒回应。当一个IP包的ECN域被路由器设置为11时,接收端而非发送端被通知路径上发生了拥塞。ECN使用TCP头部来告知发送端网络正在经历拥塞,并且告知接收端发送段已经受到了接收端发来的拥塞通告,已经降低了发送速率。

(3)URG:为1时,紧急指针(urgent pointer)有效,配合紧急指针使用

(4)ACK:为1时,确认号有效

(5)PSH:  为1时,接收方应该尽快将这个报文段交给应用层

(6)RST:为1时,释放连接,重连。

(7)SYN:为1时,发起一个连接。

(8)FIN:为1时,关闭一个连接。

8. 16位窗口大小:占16bit。此字段用来进行流量控制,主要用于解决流控拥塞的问题。单位为字节数,这个值是本机期望一次接收的字节数。

9. 16位校验值:  占16bit。对整个TCP报文段,即TCP头部和TCP数据进行校验和计算,并由目标端进行验证。

10. 16位紧急指针:占16bit。它是一个偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号。

11. 32位Tcp选项:一般包含在三次握手中。

2、UDP

UDP(User Datagram Protocol),即用户数据报协议,是无连接的、不可靠的、面向报文的传输层协议。UDP始终以恒定的速率发送数据,没有拥塞控制;UDP支持一对一、一对多、多对多、多对一通信,而TCP只支持一对一通信;UDP首部开销小,只有8字节,而TCP头部至少由20字节,相比于TCP要高效很多。

1、UDP有两个字段:数据字段和首部字段。

  • 首部字段

首部字段很简单,只有8个字节,由4个字段组成,每个字段的长度都是两个字节。

1)源端口:源端口号。在需要对方回信时选用。不需要时可用全0。

2)目的端口:目的端口号。这在终点交付报文时必须要使用到。

3)长度: UDP用户数据报的长度,其最小值是8(仅有首部)。

4)校验和:检测UDP用户数据报在传输中是否有错。有错就丢弃。

2、要注意的地方

  • UDP首部中校验和的计算方法有些特殊。在计算校验和时,要在UDP用户数据报之前增加12个字节的伪首部。
  • 伪首部既不向下传送也不向上递交,而仅仅是为了计算校验和。
  • 与IP数据报的校验和只校验IP数据报的首部不同,UDP的校验和是把首部和数据部分一起都校验。

伪首部:

TCP/UDP协议

TCP (Transmission Control Protocol)和UDP(User Datagram Protocol)协议属于传输层协议。其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送、可靠性、有效流控、全双工操作和多路复用。通过面向连接、端到端和可靠的数据包发送。通俗说,它是事先为所发送的数据开辟出连接好的通道,然后再进行数据发送;而UDP则不为IP提供可靠性、 流控或差错恢复功能。一般来说,TCP对应的是可靠性要求高的应用,而UDP对应的则是可靠性要求低、传输经济的应用。TCP支持的应用协议主要 有:Telnet(远程终端协议)、FTP、SMTP等;UDP支持的应用层协议主要有:NFS(网络文件系统)、SNMP(简单网络管理协议)、DNS(主域名称系 统)、TFTP(通用文件传输协议)等.

TCP/IP协议与低层的数据链路层和物理层无关,这也是TCP/IP的重要特点

二,网络层协议

IP协议

IP(Internet Protocol)协议是TCP/IP协议族的核心组成部分,是目前应用最广的网络互联协议。IP层对应于ISO/OSI七层参考模型中的网络层。通过IP数据包和IP地址屏蔽掉了不同的物理网络(如以太网、令牌环网等)的帧格式、地址格式等各种底层物理网络细节,使得各种物理网络的差异性对上层协议不复存在,从而使网络互联成为可能。IP协议的主要功能有:无连接数据报传送、数据报路由选择和差错控制。

ARP协议

ARP(Address Resolution Protocol)协议,又叫地址解析协议,是根据IP地址获取物理地址的一个TCP/IP协议。其中有个ARP攻击的概念,大家可以了解下。ARP攻击主要存在于在局域网中,就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞。

三、应用层协议

1、HTTP

HTTP(HyperText Transfer Protocol,超文本传输协议)用于从万维网(WWW)服务器传输超文本到本地浏览器,是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)的协议。

2、FTP

FTP(File Transfer Protocol),即文件传输协议。FTP协议包含FTP服务器和FTP客户端两部分,其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。

3、NFS

NFS(NetworkFileSystem),即网络文件系统,是一种用于文件共享的协议,主要用于主机之间进行文件的共享。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。

4、SMTP

SMTP(Simple Mail Transfer Protocol),即简单邮件传输协议,是互联网上传输邮件的事实标准,用于由源地址到目的地址传送邮件并控制信件的中转方式。

5、DNS

DNS(DomainNameSystem),即域名系统,是用来将域名解析到IP地址的一种协议(而ARP协议是用来将IP地址转换为MAC地址的协议)。

计算机网络重要协议汇总及解释笔记相关推荐

  1. 【山外笔记-计算机网络·第7版】第13章:计算机网络名词缩写汇总

    本文下载链接: [学习笔记]第13章_计算机网络名词缩写汇总.pdf ACK:ACKnowledgement,确认 ADSL:Asymmetric Digital Subscriber Line,非对 ...

  2. 【LWIP】LWIP协议|相关知识汇总|LWIP学习笔记

    这里作为一个汇总帖把,把以前写过的LWIP相关的博客文章汇总到一起,方便自己这边查找一些资料. 收录于: [LWIP]LWIP协议|相关知识汇总|LWIP学习笔记 LWIP协议 [LWIP]LWIP网 ...

  3. 计算机网络-面试题汇总

    目录 分层 OSI,TCP/IP,五层协议的体系结构? 物理层有什么作用? 数据链路层有什么作用? 网络层有什么作用? 传输层有什么作用? 会话层有什么作用? 表示层有什么作用? 应用层有什么作用? ...

  4. 计算机网络常用端口汇总!总有你不知道的端口及对应的服务!

    计算机网络常用端口汇总!总有你不知道的端口及对应的服务! 端 口 服 务 及 说 明 20 ftp-data.FTP文件传输协议(默认数据端口) 21 ftp. FTP文件传输协议(控制端口) 22 ...

  5. 阿里云产品汇总及解释

    阿里云产品汇总及解释 1. 场景描述 最近博客更新的少,跟朋友一起做些事情,最近主要给朋友做些售前工作,阿里云的产品线是真多,好多英文缩写,需要做沟通,系统汇总了一下,记录下,有需要的朋友拿走不谢. ...

  6. 《计算机网络-谢希仁》读书笔记---概述

    <计算机网络-谢希仁>读书笔记-概述 互联网概述 1.网络和互连网 2.互联网基础结构的三个发展阶段 互联网的组成 边缘部分 1.客户-服务器方式 2.对等连接方式 核心部分 1.电路交换 ...

  7. 计算机网络——HTTP协议原理

    摘要 在日常的开发中,很多开发的同学可能很少了解的HTTP协议的底层原理.HTTP协议的底层涉及到请求响应模型,HTTP的工作流程.cookie和session的原理等.本博文主要介绍计算机网络中HT ...

  8. 计算机网络划分子网实验报告,计算机网络ip协议实验报告范文

    计算机网络ip协议实验报告范文 一.实验目的 1. 掌握几种常用的网络命令,通过使用这些命令能检测常见网络故障 2. 理解各命令的含义,并能解释其显示内容的意义 二.实验内容 1. 运行 Window ...

  9. 江苏省计算机高考试题,08-16江苏省单招计算机网络高考试题汇总.doc

    08-16江苏省单招计算机网络高考试题汇总 08-16江苏省单招计算机网络试题汇总 一.单项选择题 08年 16. 以下有关计算机网络系统含义的有关阐述中,错误的是________. 实现连接的计算机 ...

最新文章

  1. Matlab编程与数据类型 -- 文本M文件
  2. 自考总结-2019-4-14
  3. 正则介绍_grep上 grep中 grep下
  4. Spring.Net 能为我们做点什么
  5. logic多分类的两种类别
  6. THINKPHP5判断当前浏览器请求方式
  7. afm原子力分析软件_牛津仪器发布全新大样品原子力显微镜Jupiter XR
  8. 【Java】基于Socket的C/S聊天程序
  9. python语言编写一个生成九宫格图片的代码_python简单实现9宫格图片实例
  10. 写给人类的机器学习 四、神经网络和深度学习
  11. 玩嗨的 2 亿快手“老铁”和幕后的极致视觉算法
  12. mysql 交互式和非交互式操作(interactive_timeout和wait_timeout)
  13. 持续图片滚动字幕html,使用JavaScript实现连续滚动字幕效果的方法
  14. 【转】pom.xml详解
  15. 2020年数模美赛参赛心得总结
  16. 图解机器学习:人人都能懂的算法原理
  17. 手写原笔迹输入_原笔迹手写软件
  18. 如何为计算机设置ip地上,电脑ip地址设置为多少
  19. 天猫总裁靖捷详解新零售:传统商圈平均增长超50%
  20. MacOS 下恢复使用谷歌浏览器翻译功能

热门文章

  1. JAVA数组去重方法
  2. 唱吧开源库KTVHTTPCache学习(一)
  3. 微信支付 回调地址哪里设置
  4. 一对一规模化难,你可以试试小班课
  5. 用c语言如何解压字符串,C语言 解压华为固件的实例代码
  6. JS三目运算符失效原因(小程序)
  7. 外星人Alienware x17 R2 评测
  8. 使用Java实现发红包案例
  9. A10X的超强性能或让苹果放弃Intel处理器成为现实
  10. TOB企业如何构建自身的生态力