数据报

TCP数据报结构以及三次握手(九)

霸气de小男生 提交于 2019-11-29 00:04:51
TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的通信协议,数据在传输前要建立连接,传输完毕后还要断开连接。 客户端在收发数据前要和服务器建立连接。建立连接的目的是保证IP地址、端口、物理链路等正确无误,为数据的传输开辟通道。 TCP建立连接时要传输三个数据包,俗称三次握手(Three-way Handshaking)。可以形象的比喻为下面的对话: [Shake 1] 套接字A:“你好,套接字B,我这里有数据要传送给你,建立连接吧。” [Shake 2] 套接字B:“好的,我这边已准备就绪。” [Shake 3] 套接字A:“谢谢你受理我的请求。” 一、TCP数据报结构 带阴影的几个字段需要重点说明一下: 序号:Seq(Sequence Number)序号占32位,用来标识从计算机A发送到计算机B的数据包的序号,计算机发送数据时对此进行标记。 确认号:Ack(Acknowledge Number)确认号占32位,客户端和服务器端都可以发送,Ack = Seq + 1。 标志位:每个标志位占用1Bit,共有6个,分别为 URG、ACK、PSH、RST、SYN、FIN,具体含义如下: URG:紧急指针(urgent pointer)有效。 ACK:确认序号有效。 PSH:接收方应该尽快将这个报文交给应用层。 RST

基于UDP协议的网络编程

旧街凉风 提交于 2019-11-28 18:57:05
UDP协议基础:  UDP(User Datagram Protocol)协议,是用户数据报协议,主要用来支持那些需要在计算机之间传输数据的网络连接。它是一种面向非连接的协议,面向非连接指的是双方在正式通信前不必于对方先建立连接关系,不管对方状态就直接发送。至于对方是否可以接收到这些数据内容,UDP协议无法控制。因此UDP协议是一种不可靠的协议,适用于一次只传送少量数据,对可靠性要求不高的应用环境。  UDP协议直接位于IP协议之上,和TCP协议一样输入传输层协议。  UDP协议与TCP协议的简单对比:   TCP协议:可靠,传输大小无限制,但是需要连接建立时间,差错控制开销大   UDP协议:不可靠,差错控制开销小,传输大小限制在64KB以下,不需要建立连接。 使用DatagramSocket 发送,接收数据:   JAVA使用DatagramSocket代表UDP协议的Socket,它的唯一作用是接收和发送数据报。   构造方法如下:     DatagramSocket(): 创建一个DatagramSocket实例,并将对象绑定到本地计算机默认的IP地址,本机所有可用端口中随机选择某个端口     DatagramSocket(int port) :创建一个指定端口,本机默认IP地址的DatagramSocket实例     DatagramSocket(int port

计算机网络之网络层

浪子不回头ぞ 提交于 2019-11-28 05:54:19
计算机网络之网络层 网络层(network layer) - 为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送。 主要协议: IP 、 ICMP 。 数据单元:IP 数据报(packet)。 典型设备:网关、路由器。 概述 IP 协议 相关协议 分类的 IP 地址 IP 地址与物理地址 IP 数据报格式 地址解析协议 ARP 网际控制报文协议 ICMP 1. Ping 2. Traceroute 虚拟专用网 VPN 网络地址转换 NAT 路由器的结构 路由器分组转发流程 路由选择协议 1. 内部网关协议 RIP 2. 内部网关协议 OSPF 3. 外部网关协议 BGP 概述 网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。网络层不提供服务质量的承诺,不保证分组交付的时限,所传送的分组可能出错、丢失、重复和失序。进程间通信的可靠性由运输层负责。 IP 协议 网际协议 IP (Internet Protocol) 定义了三种功能: IP 定义了在 TCP/IP 互联网上数据传送的基本单元和数据格式。 IP 软件完成路由选择功能,选择数据传送的路径。 IP 包含了一组不可靠分组传送的规则,指明了分组处理、差错信息发生以及分组的规则。 相关协议 与 IP 协议配套使用的还有三个协议: 地址解析协议 ARP

协议-TCP:TCP

荒凉一梦 提交于 2019-11-27 23:28:46
ylbtech-协议-TCP:TCP 传输控制协议 (TCP,Transmission Control Protocol)是 一种面向连接的、可靠的、基于字节流的传输层通信协议 ,由IETF的RFC 793 定义。 TCP旨在适应支持多网络应用的 分层协议层次结构 。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在 从硬线连接到分组交换或电路交换网络 的 各种通信系统之上操作 。 1. 返回顶部 1、 中文名:传输控制协议 外文名:Transmission Control Protocol 应用层次:传输层 数据格式:字节流 工 作:与IP协议共同使用 服 务:由套接字端点获得 目录 1 简介 2 发展历程 3 主要功能 4 主要特点 5 首部格式 6 工作方式 ▪ 建立连接 ▪ 连接终止 7 可靠性实现 ▪ 可靠性 ▪ 重传策略 ▪ 窗口确认 ▪ 配置TCP 8 协议对比 2、 2. 返回顶部 1、 简介 传输控制协议(TCP,Transmission Control Protocol) 是为了在不可靠的互联网络上 提供 可靠的端到端字节流 而专门设计的一个传输协议。 互联网络与单个网络有很大的不同,因为互联网络的不同部分可能有截然不同的

UDP 协议解析 - 1

喜你入骨 提交于 2019-11-27 11:40:28
目录 1. 概述 2. UDP 的主要特点 3. UDP 的首部格式 3. UDP 校验和 3.1 伪首部 3.2 UDP 校验和计算方法 [参考文献] 1. 概述 用户数据报协议(UDP,User Datagram Protocol)为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据报的方法。UDP是一种保留消息边界的简单的面向数据报的协议。UDP不提供差错纠正、队列管理、重复消除、流量控制和拥塞控制,但提供差错检测(包含我们在传输层中碰到的第一个真实的端到端(end-to-end)校验和)。这种协议自身提供最小功能,因此使用它的应用程序要做许多关于数据报如何发送和处理的控制工作。想要保证数据被可靠传递或正确排序,应用程序必须自己实现这些保护功能。一般来说,每个被应用程序请求的UDP输出操作只产生一个UDP数据报,从而发送一个IP数据报。而对于面向数据流的传输层协议(例如TCP),应用程序写入的全部数据与真正在单个IP数据报里传送的或接收方接收的内容可能没有联系。 2. UDP 的主要特点 1). UDP 是 无连接的 ,即发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延。 2). UDP 使用 尽最大努力交付 ,即不保证可靠交付,因此主机不需要维持复杂的连接状态表。 3). UDP 是 面向报文 的。发送方的UDP对应用程序交下来的报文

UDP协议的详细解析

北城以北 提交于 2019-11-27 11:40:16
UDP数据报 一、UDP的概述(User Datagram Protocol,用户数据报协议) UDP是传输层的协议,功能即为在IP的数据报服务之上增加了最基本的服务:复用和分用以及差错检测。 UDP提供不可靠服务,具有TCP所没有的优势: UDP无连接,时间上不存在建立连接需要的时延。空间上,TCP需要在端系统中维护连接状态,需要一定的开销。此连接装入包括接收和发送缓存,拥塞控制参数和序号与确认号的参数。UCP不维护连接状态,也不跟踪这些参数,开销小。空间和时间上都具有优势。 举个例子: DNS如果运行在TCP之上而不是UDP,那么DNS的速度将会慢很多。 HTTP使用TCP而不是UDP,是因为对于基于文本数据的Web网页来说,可靠性很重要。 同一种专用应用服务器在支持UDP时,一定能支持更多的活动客户机。 分组首部开销小**,TCP首部20字节,UDP首部8字节。 UDP没有拥塞控制,应用层能够更好的控制要发送的数据和发送时间,网络中的拥塞控制也不会影响主机的发送速率。某些实时应用要求以稳定的速度发送,能容 忍一些数据的丢失,但是不能允许有较大的时延(比如实时视频,直播等) UDP提供尽最大努力的交付,不保证可靠交付。所有维护传输可靠性的工作需要用户在应用层来完成。没有TCP的确认机制、重传机制。如果因为网络原因没有传送到对端,UDP也不会给应用层返回错误信息

Java网络通信 TCP、UDP

我是研究僧i 提交于 2019-11-27 02:21:52
网络程序设计基础 前言:   这边文章是一篇读书笔记,是我个人在看《Java从入门到精通》(第四版)一书时整理的一个笔记。里面也有借鉴到 https://blog.csdn.net/wyzidu/article/details/83826656 中的相关内容。如果内容涉及侵权,望告知。后面会及时删除。 1.1 局域网与因特网 为了实现两台计算机的通信,必须用一个网络线路连接两台计算机,如下图所示: 1.2 网络协议 啥是网络协议?   网络协议就是规定了计算机之间连接的物理,机械(网线与网卡的连接规定)、电气(有效的电平范围)等特征以及计算机之间的相互寻址规则、数据发送冲突的解决、长的数据如何分段传送与接收等。就像不同国家有不同的法律一样,目前网络协议也有多种。 (1)IP协议   IP是Internet Protocol的简称,它是一种网络协议。Internet网络采用的协议是TCP/IP协议,其全称是Transmission Control Protocol/Internet Protocol。Internet依靠TCP/IP协议,在全球范围内实现不同硬件结构、不同操作系统、不同的网络系统的互联。 TCP/IP模式是一种层次结构,共分为4层,分别为应用层、传输层、网络层和链路层。如下图所示: 1.3 端口和套接字   一般而言,一台计算机只有单一的连到网络的物理连接

InfoObject 0PROD_ID加载数据报错

给你一囗甜甜゛ 提交于 2019-11-26 17:44:24
做CRM BI CONTENT激活并加载数据,在做某个DSO的激活的时候,报错如下 Characteristic value ‘0000000000000000000000000000000100000036′ of characteristic 0PROD_ID 查看了下0PROD_ID的定义,确实是40位的CHAR,百思不得其解。。。 这时,注意到其CONVERSION ROUTINE为 PRIDB,这种ROUTINE以前没有见过,难道是ROUTINE里出了问题? 双击PRIDB,来到SE37界面:CONVERSION_EXIT_PRIDB_INPUT,执行,输入任意字符执行,报错: Storage form of product ID not yet defined in Customizing 大致了解了原因,Google后得到下面的结果: 基本上就是在BW中,[ SE16] 打开表”COMC_PR_FORMAT_B”,参照CRM系统中的表”COMC_PR_FORMAT”,创建一条相同的记录,问题解决! Note 685646 - Form of storage for product ID not defined 转载于:https://www.cnblogs.com/marvin-qian/archive/2013/06/13/3134434.html 来源:

RTP/RTSP编程

本秂侑毒 提交于 2019-11-26 13:05:32
https://blog.csdn.net/pu1030/article/details/7619908 http://blog.chinaunix.net/uid-27875-id-5017161.html 流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议、IP电话等应用场合的技术基础。RTP是进行实时流媒体传输的标准协议和关键技术,本文介绍如何在Linux下利用JRTPLIB进行实时流媒体编程。 一、流媒体简介 随着Internet的日益普及,在网络上传输的数据已经不再局限于文字和图形,而是逐渐向声音和视频等多媒体格式过渡。目前在网络上传输音频/视频(Audio/Video,简称A/V)等多媒体文件时,基本上只有下载和流式传输两种选择。通常说来,A/V文件占据的存储空间都比较大,在带宽受限的网络环境中下载可能要耗费数分钟甚至数小时,所以这种处理方法的延迟很大。如果换用流式传输的话,声音、影像、动画等多媒体文件将由专门的流媒体服务器负责向用户连续、实时地发送,这样用户可以不必等到整个文件全部下载完毕,而只需要经过几秒钟的启动延时就可以了,当这些多媒体数据在客户机上播放时,文件的剩余部分将继续从流媒体服务器下载。 流(Streaming)是近年在Internet上出现的新概念,其定义非常广泛

UDP协议的详细解析

不问归期 提交于 2019-11-25 21:44:32
UDP数据报 一、UDP的概述(User Datagram Protocol,用户数据报协议) UDP是传输层的协议,功能即为在IP的数据报服务之上增加了最基本的服务:复用和分用以及差错检测。 UDP提供不可靠服务,具有TCP所没有的优势: UDP无连接,时间上不存在建立连接需要的时延。空间上,TCP需要在端系统中维护连接状态,需要一定的开销。此连接装入包括接收和发送缓存,拥塞控制参数和序号与确认号的参数。UCP不维护连接状态,也不跟踪这些参数,开销小。空间和时间上都具有优势。 举个例子: DNS如果运行在TCP之上而不是UDP,那么DNS的速度将会慢很多。 HTTP使用TCP而不是UDP,是因为对于基于文本数据的Web网页来说,可靠性很重要。 同一种专用应用服务器在支持UDP时,一定能支持更多的活动客户机。 分组首部开销小**,TCP首部20字节,UDP首部8字节。 UDP没有拥塞控制,应用层能够更好的控制要发送的数据和发送时间,网络中的拥塞控制也不会影响主机的发送速率。某些实时应用要求以稳定的速度发送,能容 忍一些数据的丢失,但是不能允许有较大的时延(比如实时视频,直播等) UDP提供尽最大努力的交付,不保证可靠交付。所有维护传输可靠性的工作需要用户在应用层来完成。没有TCP的确认机制、重传机制。如果因为网络原因没有传送到对端,UDP也不会给应用层返回错误信息