socket(套接字)与socket地址

本文介绍了TCP/IP四层模型,包括应用层、传输层、网络层和链路层,并详细阐述了socket作为应用层与传输层之间的接口作用。socket在Linux中被视为一种文件,提供流格式套接字(TCP)和数据报格式套接字(UDP)两种类型。此外,还讲解了socket地址的重要性,包括sa_family和sa_data成员,以及专用和通用socket地址结构体的使用。
摘要由CSDN通过智能技术生成

要了解socket,首先要了解TCP/IP四层模型。

1.TCP/IP四层模型

TCP/IP四层模型是对OSI七层模型的简化,其自顶向下包含四层,分别是应用层、传输层、网络层、链路层。其中的每一层都有若干规则保障其与上下层级进行交互,也就是协议,进行通信的双方必须遵循协议才能顺利、高效的收发数据。在这些协议中,位于传输层的TCP协议和位于网络层的IP协议是使用频率最高,适用范围最广的协议,因此TCP/IP四层模型中的协议被统称为TCP/IP协议族

2.什么是socket?

socket是位于应用层和传输层中间的中介,向上,socket负责接收应用层进程将要通过网络发出的数据和传递由网络过来发给进程的数据;向下,socket负责接收传输层发送过来的数据和发送进程将要利用网络发出的数据。socket可以看作是网络通信两端的接口,在Linux中,其本质是一种文件,记录了端的相关信息。也就是说,应用层和传输层之间不会直接面对面交流,而是通过socket以统一的、安全的方式进行网络数据传输。

为什么Linux中的socket被视作一种文件类型?

在Linux中所有的文件都有文件描述符,socket被视为一种文件的好处就在于Linux系

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值