232-Linux tcp通信

1.传输层:两台不同主机上的两个进程的通信

2.tcp/ip 应用层 传输层 网络层 数据链路层
应用层发送一个"hello",到传输层以后会变成 tcp “hello”,当到了网络层以后会变成 ip tcp “hello”,到数据链路层以后会变成 帧头 ip tcp “hello” 帧尾

3.tcp和udp的特点
tcp特点:面向连接的、可靠的流式服务
upd特点:无连接的、不可靠的数据报服务

tcp的可靠性是有开销的,tcp为了可靠性付出了一些的代价

4.通过套接字可以进行数据的收发

5.创建套接字需要指定服务类型:tcp SOCK_STREAM udp SOCK_DGREAM

6.Linux中面试唯一可能要写到的代码就是tcp的服务器端和客户端

7.端口号的设置要转化成网络字节序列
端口号设置的时候需要转成网络字节序列(也就是大端字节序列),端口号是应用程序的代号,1-1024是知名端口,我们自己是不能使用的,一般是管理员才能使用,代表着知名服务,比如110,119,80号端口等特殊的服务,他们有特殊的意义,是固定的,一般1024-4096(或者说一直到5000)是保留端口,自己也不能使用,5000以上是临时端口,自己可以使用

8.什么情况下bind()会出现错误?

答案:端口号被占用,那么如何判断端口号是否被占用了呢?在Linux中有命令netstat -natp可以用来查看哪些端口号是已经被占用的了

Proto是协议
Recv-Q是接收缓冲区
Send-Q是发送缓冲区
Local Address是本地IP和端口
Foreign Address是外部IP和端口
State是tcp连接的状态
PID/Program name是进程的PID和进程的名字
在这里插入图片描述
9.关于查看哪些端口号被占用的命令netstat

netstat -natp
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值