整天搞网络编程,什么是Socket ?

整天搞网络编程,不管是基于 TCP/IP 还是 UDP 协议,都少不了socket

会使用socket ,那么能解释一下什么是socket吗?

懵逼吗?面试官这样问 能回答出来吗?

先来看一下 百度百科给的定义
在这里插入图片描述
网络上对socket的定义也是五花八门来看一下
在这里插入图片描述

借用网络上的图片,感觉非常好理解
在这里插入图片描述

socket 充当什么角色 在什么层?

在这里插入图片描述

socket 是个接口 API , 他在我们写的应用层与 TCP/IP协议网络传输层直接充当中间人,是抽象出来的,把TCP/IP 传输来的数据拿到,也可以把我们的数据发送.
Socket接口定义了许多函数或例程,我们可以用它们来开发 TCP/IP网络上的应用程序

我举个例子,不知道恰当不恰当
就好比快递员,卖家只需要把我们的地址和货物给到快递小哥
我们就可以拿到卖家的货物,而中间的各种繁琐的物流验货等 我们不用关心,快递小哥就充当
我们与卖家之间的中间人,而且是非常重要的角色

发布了171 篇原创文章 · 获赞 386 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/weixin_42837024/article/details/102684144
今日推荐