




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Socket技术要点总结1、什么是TCP/IP、UDP,它的结构是什么? 1.1 TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WANs)设计的。TCP 是传输控制协议,是一个面向连接的协议,为用户进程提供可靠的全双工字节流。TCP 套接字是一种流套接字(stream socket).TCP关心确认,超时和重传之类的细节。大多数网络应用程序都在使用TCP。注意:TCp既可以使用IPv4,也可以使用IPv6.1.2 UDP(User Data Protocol
2、,用户数据报协议)是与TCP相对应的协议。它是属于TCP/IP协议族中的一种。UDP是一个无连接协议,UDP套接字是一种数据报套接字(datagram socket)。UDP数据报不能保证最终到达它们的目的地。和TCP一样,UDP既可以使用IPv4,也可以使用ipv6.1.3 TCP和UDP的区别?可靠性在TCP/IP协议中,TCP协议通过三次握手建立一个可靠的连接(像打电话)第一次握手:客户端尝试连接服务器,向服务器发送syn包(同步序列编号Synchronize Sequence Numbers),syn=j,客户端进入SYN_SEND状态等待服务器确认第二次握手:服务器接收客户端syn包
3、并确认(ack=j+1),同时向客户端发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态第三次握手:第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手定睛一看,服务器socket与客户端socket建立连接的部分其实就是大名鼎鼎的三次握手而UDP是不可靠的连接,像是写信,对方不一定能够收到信的内容;1.4 TCP/IP、UDP 的分层: 由上可以看到TCP/IP协议族包括应用层、运输层、网络层、链路层。2. socket 2.1 套接字
4、(socket)概念套接字(socket)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。 应用层通过传输层进行数据通信时,TCP会遇到同时为多个应用程序进程提供并发服务的问题。多个TCP连接或多个应用程序进程可能需要通过同一个 TCP协议端口传输数据。为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCPIP协议交互提供了套接字(Socket)接口。应用层可以和传输层通过Socket接口,区分来自不同应用程序进程或网络连接的通信,实现数据传输的并发服务。2.2 建立socket连接建立Socket连
5、接至少需要一对套接字,其中一个运行于客户端,称为ClientSocket,另一个运行于服务器端,称为ServerSocket。套接字之间的连接过程分为三个步骤:服务器监听,客户端请求,连接确认。服务器监听:服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态,等待客户端的连接请求。客户端请求:指客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接字的地址和端口号,然后就向服务器端套接字提出连接请求。连接确认:当服务器端套接字监听到或者说接收到客户端套接字的连接请求时,就响应客户端套接
6、字的请求,建立一个新的线程,把服务器端套接字的描述发 给客户端,一旦客户端确认了此描述,双方就正式建立连接。而服务器端套接字继续处于监听状态,继续接收其他客户端套接字的连接请求。服务端: ServerSocket serverSocket = new ServerSocket(PORT); Socket client = serverSocket.accept(); 客户端: Socket socket =
7、160;new Socket(IP_ADDR, PORT); socket.getInputStream()、socket.getInputStream()获取到流传递数据信息;补充:HTTP连接 HTTP协议即超文本传送协议(Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用。 HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。 1)在HTTP 1.0中,客户端的每次请求都要求建立一次单独的连接,在处理完本次请求后,就自动释放连接。 2)在HTTP 1.1中则可以在一次连接中处理多个请求,并且多个请求可以重叠进行,不需要等待一个请求结束后再发送下一个请求。 由于HTTP在每次请求结束后都会主动释放连接,因此HTTP连接是一种“短连接”,要保持客户端程序的在线状态,需要不断地向服务器发起连接请求。通常的做法是即使不需要获得任何数据,客
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年平顶山工业职业技术学院高职单招语文2019-2024历年真题考点试卷含答案解析
- 2025年山东药品食品职业学院高职单招(数学)历年真题考点含答案解析
- 2025年山东电力高等专科学校高职单招高职单招英语2016-2024历年频考点试题含答案解析
- 2025年山东商务职业学院高职单招(数学)历年真题考点含答案解析
- 2025年山东传媒职业学院高职单招职业适应性测试历年(2019-2024年)真题考点试卷含答案解析
- 2025年宝鸡三和职业学院高职单招职业适应性测试历年(2019-2024年)真题考点试卷含答案解析
- 2025年安徽汽车职业技术学院高职单招(数学)历年真题考点含答案解析
- 2025年安徽林业职业技术学院高职单招职业适应性测试历年(2019-2024年)真题考点试卷含答案解析
- 2025年安徽冶金科技职业学院高职单招高职单招英语2016-2024历年频考点试题含答案解析
- 白内障患者的护理查房
- 2024年新物业管理技能及理论知识考试题与答案
- 2024年国考公务员行测真题及参考答案
- DG-TJ 08-2407-2022 城市道路交通安全评价标准
- 2024汽车行业社媒营销趋势【微播易CAA中国广告协会】-2024-数字化
- 2024年福建省中考化学试卷附答案
- GIS分析-第3章-空间量测与计箣
- TSG-T7001-2023电梯监督检验和定期检验规则宣贯解读
- 煤矿各岗位应知应会明白卡集合
- 大数据时代企业会计信息化风险分析与防范探究-以中茂建筑为例1
- 退役士兵创业培训课件模板
- 医疗器械的清洁与消毒指南
评论
0/150
提交评论