linux网络编程
Posted xtusir
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux网络编程相关的知识,希望对你有一定的参考价值。
一、CS架构,BS架构
(1)CS架构介绍(client server,客户端服务器架构),例如:qq、360网盘
(2)BS架构介绍(broswer server,浏览器服务器架构)例如:浏览器
二、TCP协议学习1
1、关于TCP理解的重点
(1)TCP协议工作在传输层,对上服务socket接口,对下调用IP层
(2)TCP协议面向连接,通信前必须先3次握手建立连接关系后才能开始通信。
(3)TCP协议提供可靠传输,不怕丢包、乱序等。
2、TCP如何保证可靠传输
(1)TCP在传输有效信息前要求通信双方必须先握手,建立连接才能通信
(2)TCP的接收方收到数据包后会ack给发送方,若发送方未收到ack会丢包重传
(3)TCP的有效数据内容会附带校验,以防止内容在传递过程中损坏
(4)TCP会根据网络带宽来自动调节适配速率(滑动窗口技术),如果接收方接收压力很小,发送方便会慢慢提高发送速率;相反接收方压力大,发送方会慢慢讲地发送速率
(5)发送方会给各分割报文编号,接收方会校验编号,一旦顺序错误即会重传。
三、TCP协议的学习2
1、TCP的三次握手
(1)建立连接需要三次握手
(2)建立连接的条件:服务器listen时客户端主动发起connect
2、TCP的四次握手
(3)关闭连接需要四次握手
(4)服务器或者客户端都可以主动发起关闭
以上是关于linux网络编程的主要内容,如果未能解决你的问题,请参考以下文章
linux怎么配置网络设置(linux怎么配置网络 连接外网)