socket
来源:互联网 发布:百度竞价账户优化 编辑:程序博客网 时间:2024/05/17 01:23
借用别人的流程图提醒自己编程的步骤
1.面向连接的套接字的系统调用时序图
无连接协议的套接字调用时序图
面向连接的应用程序流程图
TCP(Transmission Control Protocol:传输控制协议)
TCP模型结构图,如下图所示:
服务器端与客户端的交互图,如下图所示:
对上图,解释如下
- 服务器程序编写
- 调用ServerSocket(int port)创建一个服务器套接字,并绑定到指定端口上;
- 调用accept(),监听连接请求,如果客户端请求连接,则接受连接,返回通信套接字;
- 调用Socket类的getOutputStream()和getInputStream()获取输出和输入流,开始网络数据的发送和接收;
- 最后关闭通信套接字。
- 客户端程序编写
- 调用Socket()创建一个流套接字,并连接到服务器端;
- 调用Socket类的getOutputStream()和getInputStream()获取输出和输入流,开始网络数据的发送和接收;
- 关闭通信套接字。
具体如何使用的例子,相信大家已经看了很多了,在这里就不详细说明了。
UDP (User DataPram Protocol:用户数据报协议)
UDP模型结构图,如下图所示:
服务器端与客户端的交互图,如下图所示:
对上图,解释如下:
- 接收端程序编写:
- 调用DatagramSocket (int port)创建一个数据报套接字,并绑定到指定端口上;
- 调用DatagramPacket(byte[] buf,int length),建立一个字节数组以接收UDP包;
- 调用DatagramSocket类的receive(),接受UDP包;
- 最后关闭数据报套接字。
- 发送端程序编写:
- 调用DatagramSocket()创建一个数据包套接字;
- 调用DatagramPacket(byte[] buf,int offset,int length,InetAddress address,int port),建立要发送的UDP包;
- 调用DatagramSocket类的send()发送UDP包;
- 最后关闭数据报套接字。
- socket
- socket
- Socket
- Socket
- Socket
- Socket
- Socket
- Socket
- socket
- Socket
- Socket
- Socket
- Socket
- socket
- socket
- socket
- socket
- socket
- 如何去掉Android应用启动时带的标题栏及启动时的误解问题剖析?
- 事件传播和默认操作
- 用JDK5.0自带工具解决实际工作中的问题
- android天气预报----google开源天气API,SAX解析
- 触发器的简单学习
- socket
- 关于.h 与 汇编中的.inc文件
- 密码破解全攻略
- Kobject相关
- Struts2.0上传文件
- sphinx 压缩算法
- 一些函数总结(2)
- Cowpatty再战江湖 wpa2-psk之hash高速研究学习
- 数据泵导入到不存在的用户(一)