栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

计算机网络-Tec-3-Socket编程

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

计算机网络-Tec-3-Socket编程

Socket 编程

1. Socket简介2. Socket分类

2.1. 有连接的客户/服务器时序图2.2. 无连接的客户/服务器时序图 3. Socket常用函数

3.1. socket()函数3.2. bind()函数3.3. listen()和connect()函数3.4. accept()函数3.5. read()、write()等3.6. close()操作 4. Linux的阻塞和非阻塞IO5. Java Socket API

5.1. 示例5.2. TCP套接字

5.2.1. ServerSocket类5.2.2. Socket类 5.3. 套接字传输数据

5.3.1. 写入数据5.3.2. 写出数据 6. TCP套接字编程示例

6.1. Java示例 7. UDP

7.1. DatagramSocket类7.2. DatagramPacket类7.3. UDP套接字编程示例7.4. Java示例 1. Socket简介

    不在一个主机上,通过socket来满足需求,封装不同网络主机的请求

    处理不同的细节存在一定的难度,Socket我们可以屏蔽一些底层设计。
2. Socket分类

    流套接字:可靠数据报套接字:广播、简单原始套接字:保证IP完整性
2.1. 有连接的客户/服务器时序图

    客户端一般是发起方
2.2. 无连接的客户/服务器时序图

    动作一致
3. Socket常用函数
    这里的函数使用C作为演示。
3.1. socket()函数

    协议簇:指定具体的协议socket类型:protocol协议:具体用什么协议type和protocol是必须对应的返回一个描述符(在协议空间,但没有绑定IP地址)
3.2. bind()函数

3.3. listen()和connect()函数

3.4. accept()函数

    空指针作为返回的协议地址(因为不知道是谁来进行请求的)
3.5. read()、write()等

3.6. close()操作

4. Linux的阻塞和非阻塞IO

    文件描述符fd:是进程中文件的唯一索引套接字默认是阻塞模式,我在写别人不能写(修改阻塞态)

    count个字节的数据返回值:
      >00-1:错误码进入errno
    阻塞模式:如果建立连接后则长时间占用文件,而非阻塞模式则会返回-1,判断EAGAIN使用read调用来读取指定长度的数据(阻塞模式)
      nread表示不是很重要的错误返回读了多少bufp:下次开始读是从哪里开始读

    使用read调用来读取指定长度的数据(非阻塞模式)

5. Java Socket API


5.1. 示例

5.2. TCP套接字
    Socket和ServerSocket

5.2.1. ServerSocket类

5.2.2. Socket类

    主动连接;Socket
5.3. 套接字传输数据 5.3.1. 写入数据

5.3.2. 写出数据

6. TCP套接字编程示例

6.1. Java示例


    Java进行了比较好的封装

7. UDP

7.1. DatagramSocket类

7.2. DatagramPacket类

7.3. UDP套接字编程示例

7.4. Java示例

    数据报最大1024字节

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/756078.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号