【Java 网络编程】Socket TCP UDP 联系

举报
韩曙亮 发表于 2022/01/11 00:10:09 2022/01/11
【摘要】 文章目录 I 信息传输关注点II Socket 与 TCP UDP 关系III Socket 连接组成 ( IP地址 + 端口号 )IV Socket TCPV Socket UDPVI CS 应...



I 信息传输关注点



信息传输不需要关心底层 : 将字符串数据从设备 A 传递给设备 B , 需要将数据转为电信号进行传输 , 但是我们不需要关心具体的信息如字符串中的某个字母 , 到底转成哪些电信号进行传输 , 如果需要考虑底层的具体操作 , 整个开发会非常繁琐 ;

快递发送案例 : A 向 B 发一份快递 , 首先将物品包装起来 ( 对应表示层的数据封装 ) , 然后贴上目的地标签 ( 对应网络层寻址和路由选择 ) , 然后送到快递公司 , 快递公司通过各种物流如航空或火车 ( 对应物理层的光电信号传输 ) , B 收到后 , 拆开快递 , 拿到物品 ; 该操作类似于 OSI 的七层网络模型发送数据信息 ; 发送信息的 A 不需要了解具体的物流过程 , 只需要将物品准备好即可 ;



II Socket 与 TCP UDP 关系



1. Socket 与 TCP UDP 之间的关系 : Socket 就是对 TCP UDP 协议进行的封装 , 主要封装了 IP 地址与对应的通信端口相关内容 ;

  • ① 端口 : 如使用 HTTP 协议访问网站 , 访问的就是 80 端口 ;
  • ② IP 地址 : 在网络中可以使用 IP 地址查找到指定网络设备 ;

2. Socket 是对 TCP/IP 协议的实现 , 具体指的就是 Socket 相关的 API , 包括流套接字 ( Stream Socket ) 和数据套接字 ( Datagram Socket ) ;



III Socket 连接组成 ( IP地址 + 端口号 )



1. Socket 作用 : 信息传输过程中 , 标识两个端点之间的网络连接 ;

2. Socket 连接与物理层连接 : 设备 A 与设备 B 通过 Socket 连接 , 该连接不是物理层面的连接 , 其物理层面可能正在连接 , 也可能没有连接 , 可能一次 Socket 连接要涉及到多次物理层连接与断开 , 物理层连接对 Socket 操作来说是透明的 ;

3. 端点 : IP 地址 + 端口号 , 代表了一个端点 ;

4. 服务器客户端 Socket 连接元素 : 在一个客户端与服务器的 Socket 连接中 , 涉及到了 ① 服务器 IP 地址 , ② 服务器端口号 , ③ 客户端 IP 地址 , ④ 客户端端口号 ;



IV Socket TCP



1. 三次握手 : TCP 是面向连接的通信协议 , 该协议下建立连接 , 需要三次握手 , 通信结束后要关闭连接 ;

2. 端到端通信 : TCP 协议只能用于两个端点之间的通信 , 通信时是无法与第三个端点进行通信 ;



V Socket UDP



1. UDP 协议特点 : UDP 是无连接的通信协议 , 其数据包含目标端口信息和源端口信息 ;

2. UDP 广播 : 该协议通信不需要建立连接 , 可以实现广播发送 ;

3. TCP 与 UDP 传输区别 : TCP 数据发送数据到另一端 , 必有一个反馈结果 , 或者成功 , 或者失败 ; UDP 发送数据 , 不管结果 , 只负责发送 , 不负责送达 ;



VI CS 应用模型



CS 应用模型 ( Client-Server Application ) : TCP/IP 协议的通信 , 主要使用的模型就是 CS 模型 , Server 和 Client 分别对应服务器端和客户端的两个进程 ; 其主要目的是实现网络中的计算机资源 , 服务 , 和数据的共享 ; 常用的 CS 模型是 FTP , SMTP , HTTP ;

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/100125198

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。