版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生物质发电装备品质提升
- 房颤药物治疗
- 2024学年绍兴市高三语文上学期11月期中考试卷及答案解析
- 2024至2030年中国二门冷藏柜工作台行业投资前景及策略咨询研究报告
- 2024至2030年中国全自动卷筒模切机行业投资前景及策略咨询研究报告
- 2024至2030年非介入胶原再生美肤仪项目投资价值分析报告
- (八年级《语文》上册课件)应有格物致知精神
- 2024至2030年木制金币盒项目投资价值分析报告
- 影城安全生产工作总结
- 循证护理证据转化汇报课件
- 高职院校开设人工智能通识课程的必要性探究
- 人教版英语九年级Unit 5《What are the shirts made of》全单元说课稿
- 2023-2024学年天津市河西区高二上学期期末质量调查生物试题(解析版)
- 人教版七年级上册地理问答题提纲
- 医院公共设施维护管理制度
- DBJ∕T15-231-2021 城市轨道交通既有结构保护监测技术标准
- 劳动教育智慧树知到期末考试答案2024年
- 冬季中医养生知识讲座总结
- 2024年度氢气站安全应急预案完整
- 人才计划答辩常见问题
- 《面食英文介绍》课件2
评论
0/150
提交评论