Java中Socket与TCP的区别是什么?

知识补充

TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。
Socket本质是编程接口(API),对TCP/IP的封装,通常也称作套接字,用于描述IP地址和端口。

7应用层例如HTTPSMTPSNMPFTPTelnetSIPSSHNFSRTSPXMPPWhoisENRP
6表示层例如XDRASN.1SMBAFPNCP
5会话层例如ASAPTLSSSH、ISO 8327 / CCITT X.225、RPCNetBIOSASPWinsockBSD sockets
4传输层例如TCPUDPRTPSCTPSPXATPIL
3网络层例如IPICMPIGMPIPXBGPOSPFRIPIGRPEIGRPARPRARP、 X.25
2数据链路层例如以太网令牌环HDLC帧中继ISDNATMIEEE 802.11FDDIPPP
1物理层例如线路无线电光纤信鸽

解疑答惑

  1. 如果不使用socket是不是无法建立tcp协议的连接了?
  2. 如果socket是对TCP/IP的封装那么TCP是怎样子的?
  3. socket读取流读取的字节流是TCP没有处理过的原字节流吗?
  4. 为什么Java中Socket的每次读取都少了第一个字节?
  5. TCP协议传输的数据是怎样子的有什么样的格式或约定?
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值