网络相关常识和Socket连接

网络架构模型:

OSI 参考模型
  • OSI (Open System Interconnect) 参考模型 开放式系统互联
  • ISO是国际标准化组织1985研究网络互联模型
  • ISO为了更好的使用网络、普及,推出了OSI参考模型,让所有的公司按照统一的标准制定自己的网络,便于互联
  • OSI 定义了网络连接的七层框架(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层)
TCP/IP 五层模型

(物理层、数据链路层、网络层、传输层、应用层)

  • 应用层:应用层是最靠近用户的一层,是为计算机用户提供应用接口,也为用户直接提供各种网络服务,我们常见的网络协议:HTTP、HTTPS、FTP、TELNT等。
  • 传输层:建立了主机端的链接、传输层的主要作用是为上层协议提供可靠、透明的数据传输服务,包括处理差错控制和流量控制等等问题,使高层用户看到只是两个传输实体的一条主机到主机,可由用户控制和设定 : TCP和UDP就是在这一层。端口号就是这里的“端”
  • 网络层:通过IP寻址来建立两个节点之间的链接,为源端的运输层来分组,选择合适的路由和交换节点,正确无误的按照地址传送给目的端的运输层,就是通过说的IP层,也是经常说的IP协议层、IP协议是 Internet 基础

网络协议:

TCP 协议
  • TCP( Tranfer Control Protocol ) 的简称:是一种面向连接的保证可靠传输的协议

  • 通过TCP协议传输,得到一个顺序无差错的数据流,发送方和接收方成对的两个socket之间必须连接连接

  • 当一个socket 等待连接时,另一个 socket可以要求进行连接,一旦两个socket连接起来,它们就可以进行双向的数据传输,双方都可以进行发送和接收

  • TCP的三次握手(建立起来一个TCP连接需要经过三次握手)

    第一次:客户端发送SYN包到服务器,并进入SUN_SEND状态,等待服务器确认。
    第二次:服务器接收到SYN包,必须确认客户端的SYN,同时自己也发送一个SYN包,此时服务器进入SYN_RECV状态。
    第三次:客户端收到服务器的SYN包,向服务器发送确认,此包发送完毕,客户端和服务器端进入ESTABLISHED状态。

  • 握手过程中传送的包中不包含数据,三次握手完毕 后,客户端与故武器端才正式的开始传输数据

  • 在理想状态下,TCP连接一旦建立,在通信双方任何一方主动关闭连接之前,TCP连接都将一致保持下去

  • 服务器和客户端都可以主动的断开TCP连接的请求

  • TCP 面向连接协议,在socket之间进行数据的传输之前必须连接连接,所以TCP中需要连接时间。

  • TCP传输数据没有大小的限制,一旦连接建立起来,双方的socket就可以按照统一的格式传输大的数据

  • TCP是可靠的协议它确保接收方完全正确的获取发送方所发送的全部数据

  • TCP在网络通信上有极强的生命力的。如远程连接(TeLnet) 和 文件的传输(FTP) 都需要不定长度数据被可靠的传输,但是可靠的传输,需要付出代价,对数据的内容中正确性的检验必然需要占用计算的处理时间和网络宽带,所以TCP传输的效率不如UDP高

UDP协议
  • UDP(User Datagram Protocol) 是一种 无连接协议,每个数据报都是一个独立的信息,包括完整的源地址或目的地址
  • 在网络以任何可能的路径传往目的地址,因此能否到达的地,到达目的地址的时间以及内容的正确性都是不能被保证
  • UDP每个数据报中都给出了完成的地址信息,因此无需建立发送方和接收方的链接
  • UDP在传输数据的大小上是有所限制的,每个被传输的数据必须限定在60KB之内
  • UDP是一个不可靠的 协议,发送方锁发送的数据并不一定以相同的次序发送到接收方
  • UDP操作简单,而且仅需要少量的监护,所以通常用于局域网高可靠性的分散系统中,比如:视频会议
Socket 原理
  • Socket提供了进程通信的端点,进程通信之前,双方首先必须各自创建一个端点否则没有办法连接相互通信
  • 连接过程:服务器监听 、客户端的请求 、连接的确认
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值