传输层

网络协议

|▌冷眼眸甩不掉的悲伤 提交于 2020-03-01 22:44:08
计算机网络 随着发展,计算机被一个个的连接起来,形成了一个计算机网路,从而实现了信息共享,远距离传递信息等工作。 计算机网络,根据规模可分为2种: WAN:Wide Area Network(广域网) LAN:Local Area Nerwork(局域网) 网络协议 计算机之间通过网络实现通信时需事先达成的一种“约定”;这种“约定”使那些由不同厂商的设备,不同CPU及不同操作系统组成的计算机之间,只要遵循相同的协议就可以实现通信。 ISO(国际标准化组织)制定了一个国际标准OSI(开放式通信系统互联参考模型) 1、物理层(physical layer) 所谓的物理层,是指光纤、电缆或者电磁波等真实存在的物理媒介。这些媒介可以传送物理信号,比如亮度、电压或者振幅。对于数字应用来说, 我们只需要两种物理信号来分别表示0和1,比如用高电压表示1,低电压表示0,就构成了简单的物理层协议。 针对某种媒介,电脑可以有相应的接口,用来接收物理信号,并解读成为0/1序列。 2、连接层(link layer) 在连接层,信息以帧(frame)为单位传输。所谓的帧,是一段有限的0/1序列。 连接层协议的功能就是识别0/1序列中所包含的帧。 比如说,根据一定的0/1组合识别出帧的起始和结束。在帧中,有收信地址(Source, SRC)和送信地址(Destination, DST)

TCP/IP协议学习(一)-概述

三世轮回 提交于 2020-03-01 10:53:01
本文主要摘抄自书籍《 TCP/IP详解卷一:协议 》与TCP协议相关内容的学习笔记。 文章目录 TCP/IP协议概述 分层 延伸知识 FTP例子 为什么需要网络层和传输层 TCP/IP的分层 封装 分用 总结 TCP/IP协议概述 很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP协议族允许它们互相进行通信。TCP/IP起源于60年代末美国政府资助的一个分组交换网络研究项目,到90年代已发展成为计算机之间最常应用的组网形式。它成为被称作“全球互联网”或“因特网(Internet)”的基础。 下面内容主要对TCP/IP协议族进行概述。 分层 网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如TCP/IP,是一组不同层次上的多个协议的组合。 TCP/IP通常被认为是一个四层协议系统,如图1-1所示。 每一层负责不同的功能: 1) 链路层 ,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。 2) 网络层 ,有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互联网控制报文协议),以及IGMP协议(Internet组管理协议)。 3)

2019/7/10

和自甴很熟 提交于 2020-02-29 11:19:23
1.OSI分层的意义 将复杂的流程分解成几个功能单一的子过程 2.OSI七层模型及作用 应用层 网络服务与最终用户的一个接口 表示层 数据的表示、安全、压缩 会话层 建立、管理、终止会话 传输层 定义传输数据的协议端口,以及流控和差错校验 网络层 进行逻辑地址(Ip地址)寻址,实现不同网络之间的路径选择 数据链路层 建立逻辑连接、进行硬件地址寻址、差错校验等功能 物理层 建立、维护、断开物理连接 3.TCP/IP四层模型 应用层 传输层 网络层 网络接口层 4.TCP/IP五层模型 应用层 传输层 网络层 数据链路层 物理层 5.数据封装解封装的过程 封装过程 ①用户信息转换为数据,以便在网络上传输。 ②数据转换为数据段,并在发送方和接收方主机之间建立一条可靠的连接。 ③数据段转换为数据包或数据报,并在报头中放上逻辑地址,这样每一个数据包都可以通过互联网络进行传输。 ④数据包或数据报转换为帧,以便在本地网络中传输。在本地网段上,使用硬件地址唯一标识每一台主机。 ⑤帧转换为比特流,并采用数字编码和时钟方案。 解封装过程 ①物理层:将电信号转化为二进制数据,并将其送至数据链路层 ②数据链路层:查看MAC地址,地址是自己,就拆掉MAC头部,继续传输 地址不是自己,就丢弃数据; ③网络层:查看IP地址,地址是自己,就拆掉IP头部,继续传输 地址不是自己,就丢弃数据; ④传输层

Android中的常见通信机制

北慕城南 提交于 2020-02-28 14:08:48
Android中的常见通信机制 1. Handler 同进程的线程间通信 Handler通过sendMessage()发送Message到MessageQueue队列,Looper通过loop()不断提取出Message,并将Message交给target通过displatchMessage()分发给handlerMessage处理。 2. Binder 每个应用之间的通信,即进程间通信 普通服务和基于AIDL的服务bindService 3. Android网络编程分为两种:基于http协议的,和基于socket的。 基于Http协议: HttpClient、HttpURLConnection、AsyncHttpClient框架 等 基于Socket: Socket应用层和传输层之间的一种抽象 (1)针对TCP/IP的Socket、ServerSocket ( 流套接字 ) (2)针对UDP/IP的DatagramSocket、DatagramPackage ( 数据报套接字 ) TCP/IP协议体系结构: 应用层、传输层、网络层 、网络接口层 OSI模型 : 应用层 、 表示层 、 会话层 、 传输层 、 网络层 、 数据连接层 、 物理层 TCP协议: 三次握手: 第一次:客户端 发送 SYN包(=j)到服务器 (客户端 SYN_SEND状态 ) 第二次:服务器 发送 ACK

企业应用安全认识初步

纵然是瞬间 提交于 2020-02-28 13:04:20
一、安全技术目标 保密性(Confidentiality) 确保数据仅能够被合法的用户访问。 完整性(Integrity) 确保数据只能由授权的方式进行修改,即数据在传播过程中不能被未授权方修改。 可用性(Availability) 确保所有数据仅在适当的时候可以由授权方访问。 可靠性(Reliability) 确保系统能在规定的条件下、规定时间内、完成规定功能时具有稳定的概率。 抗否认性(Non-Repudiation) 确保发送方与接收方在执行各自操作后,对所做的操作不可否认。 二、OSI安全体系结构 1. 五类安全服务 认证(鉴别)服务 在网络交互过程中,对收发双方的身份及数据来源进行验证。 访问控制服务 防止未授权用户非法访问资源,包括用户身份认证和用户权限确认。 数据保密性服务 防止数据在传输过程中被破解、泄露。 数据完整性服务 防止数据在传输过程中被篡改。 抗否认性服务 防止发送方与接收方双方在执行各自操作后,否认各自所做的操作。 2. 八类安全机制 加密机制 通过对数据进行加密,防止数据在传输过程中被窃取。 数字签名机制 利用数字签名技术可以试试用户身份认证和消息认证。 访问控制机制 通过预定设定的规则对用户所访问的数据进行限制。 数据完整性机制 避免数据在传输过程中受到干扰,同事防止数据在传输过程中被篡改,以提高数据传输完整性。 认证机制

速读原著-TCP/IP(最大传输单元MTU)

假装没事ソ 提交于 2020-02-27 10:13:28
第二章 链路层 2.7 环回接口 大多数的产品都支持环回接口( Loopback Interface),以允许运行在同一台主机上的客户程序和服务器程序通过 T C P / I P进行通信。A类网络号1 2 7就是为环回接口预留的。根据惯例,大多数系统把I P地址1 2 7 . 0 . 0 . 1分配给这个接口,并命名为 l o c a l h o s t。一个传给环回接口的 I P数据报不能在任何网络上出现。 我们想象,一旦传输层检测到目的端地址是环回地址时,应该可以省略部分传输层和所有网络层的逻辑操作。但是大多数的产品还是照样完成传输层和网络层的所有过程,只是当I P数据报离开网络层时把它返回给自己。图2 - 4是环回接口处理I P数据报的简单过程。 图中需要指出的关键点是: 传给环回地址(一般是1 2 7 . 0 . 0 . 1)的任何数据均作为I P输入。 传给广播地址或多播地址的数据报复制一份传给环回接口,然后送到以太网上。这是因为广播传送和多播传送的定义(第 1 2章)包含主机本身。 3 ) 任何传给该主机I P地址的数据均送到环回接口。看上去用传输层和 I P层的方法来处理环回数据似乎效率不高,但它简化了设计,因为环回接口可以被看作是网络层下面的另一个链路层。网络层把一份数据报传送给环回接口,就像传给其他链路层一样,只不过环回接口把它返回到 I P的输入队列中。 在图2

HTTP_01_了解web及网络基础

﹥>﹥吖頭↗ 提交于 2020-02-26 18:10:18
TCP/IP协议族,是在IP协议的通信过程中,使用到的协议族的统称。HTTP属于其内部的一个子集。 1 TCP/IP的分层管理 依次分为一下4层:应用层、传输层、网络层、数据链路层。 应用层 应用层决定了向用户提供应用服务时通信的活动。 FTP(File Transfer Protocol,文件传输协议) DNS(Domain Name System,域名系统) HTTP 传输层 传输层对上层应用层,提供处于网络连接中 的两台计算机之间的数据传输。 TCP(Transmission Control Protocol,传输控制协议) UDP(User Data Protocol,用户数据报协议) 网络层 网络层用来处理在网络上流动的数据包。 IP(Internet Protocol),IP协议(和IP地址区分开) 链路层 用来处理链接网络的硬件部分。 数据在层与层之间会有数据信息的包装起来的做法称为 封装 (encapsulate)。 2 与HTTP关系密切的协议 2.1 负责传输的IP协议 作用:把各种数据包传送给对方。 为了满足传输的准确,需要 IP地址 和 MAC地址 (Media Access Control Address) IP地址指明了节点被分配到的地址,MAC地址是指网卡所属的固定地址。(这其中还会采用ARP协议,通过通信方的IP地址反查出对应的MAC地址) 2.2

TCP和Http的区别

こ雲淡風輕ζ 提交于 2020-02-26 16:29:52
相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通过自己的浅显理解能对初学者有所帮助。 1、TCP连接 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。 建立起一个TCP连接需要经过“三次握手”: 第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 握 手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连 接之前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过“四次握手”(过程就不细写 了,就是服务器和客户端交互,最终确定断开) 2、HTTP连接 HTTP协议即超文本传送协议

计算机网络 第五章:传输层

元气小坏坏 提交于 2020-02-26 11:58:53
第五章 传输层 ->传输层协议UDP和TCP ->网络安全 ->TCP可靠传输的实现 ->TCP的流量控制 ->TCP的拥塞控制 ->TCP的运输连接管理 5.1 OSI和DoD模型 下图必须背下来。尤其是传输层和网络层的协议。 传输层最大数据包是65535字节,而网络层数据最大只有1480字节。所以需要分段,但是只要分段,就有可能丢包,因为网络层不负责可靠传输。所以要求服务器和客户端保持会话,直到数据传输完成。 ->TCP(Transmission Control Protocol)传输控制协议 应用场景:需要将要传输的文件分段传输时;就需要TCP协议来建立会话实现可靠传输;同时也有流量控制功能。(例如QQ传文件) 查看会话 netstat -n 查看建立会话的进程 netstat -nb ->UDP(User Data Protocol)用户数据报协议 应用场景:一个数据包就能完成数据通信;不需要建立会话和流量控制;多播/广播;是一种不可靠传输。(例如QQ聊天,屏幕广播) 5.2 传输层协议和应用层协议的关系 (1)TCP和UDP协议和不同的端口即可对应一个应用层的协议。注意,53大部分是与UDP相连。 (2)熟知数值一般为0-1023,登记端口号数值1024-49151,客户端口号数值为49152-65535. (3)常用的应用层协议使用的端口(号): http = TCP

tcp/ip协议做了啥

你离开我真会死。 提交于 2020-02-26 08:37:40
# 基础知识: - tcp/ip协议不是一个协议,是一个协议群,tcp/ip协议对应的四层模型,应用层、传输层、网络层、链路层。 ## 各层到底做了啥? - 链路层: 主要是将数据封装成数据帧,数据帧头部信息有源mac地址,目标mac地址,然后以广播形式通过物理介质(光纤、双绞线..)发送给目标主机。 为什么有ip地址还需要mac地址? ip地址是分配的,可变动的,mac地址是每块网卡的身份标识,主机接入互联网必须使用网卡,网卡地址是一个机器全球唯一标识,所以通过mac地址找目标主机更可靠。 有了MAC地址以后,以太网采用广播形式,把数据包发给该子网内所有主机,子网内每台主机在接收到这个包以后,都会读取首部里的目标MAC地址,然后和自己的MAC地址进行对比,如果相同就做下一步处理,如果不同,就丢弃这个包。 - 网络层: 发送者如何知道接收者的MAC地址?(arp协议) 发送者如何知道接收者和自己同属一个子网?(ip协议) 如果接收者和自己不在同一个子网,数据包如何发给对方(路由协议) 网络层有ip协议、arp协议、路由协议,主要是解决如上三个问题。 我认为该层主要是为了获取目标的mac地址。 ARP获取mac地址,ARP首先会发起一个请求数据包,数据包的首部包含了目标主机的IP地址,然后这个数据包会在链路层进行再次包装,生成以太网数据包