| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> tcp/ip网络编程——笔记 -> 正文阅读 |
|
[系统运维]tcp/ip网络编程——笔记 |
文章目录参考: 《TCP/IP网络编程》课后练习答案第一部分1~5章 尹圣雨——害你加班的BUG都是我写的 《TCP/IP网络编程》学习笔记——riba2534 友友们可直接跳转,接下来的内容是基于我的知识的查漏补缺型笔记,并不全面。 第一章2.在服务器端创建套接字后,会依次调用listen函数和accept函数。请比较并说明两者作用。 listen:将套接字转为可接受连接方式。 5.Linux中的文件描述符与Windows的句柄实际上非常类似。请以套接字为对象说明他们的含义。 都是为了区分指定文件而赋予的整数值。 第二章5.何种类型的套接字不存在数据边界?这类套接字接收数据时需要注意什么? 连接指向型TCP套接字不存在数据边界。因此输入输出函数的响应次数不具有意义。重要的不是函数的响应次数,而是数据的收发量。 因此,必须将传输数据的量和接收数据的量制作成编码,保证发送数据的量和接收数据的量是一致的,特别要注意是制作依赖函数响应次数判断代码。 6.修改代码
第三章先有sockaddr_in结构体,然后转换为sockaddr结构体,传递给bind即可。 6.什么是知名端口?其范围是多少?知名端口中具有代表性的HTTP合同FTP端口号各是多少? “知名端口(Well-known PROT)”是指预定分配给特定操作的端口。其范围是0~1023,其中最知名的端口是HTTP:80端口和TCP:21 7.题目大概意思是:为什么bind中第二个参数是sockaddr,但是传入的是sockaddr_in bind函数第二个参数类型是sockaddr结构体,很难份分配IP地址和端口号,因此IP地址和PORT号的分配是通过sockaddr_in完成的。因为该结构体和sockaddr结构体的组成字节序和大小完全相同,所以可以强转。 10.回送地址表示计算机本身,为 第四章 基于tcp(一)两个:sock,addr结构体 迭代服务器端、客户端connect函数(客)和accept函数(服)不一定谁先调用,不管怎样,两个都运行了,才能传数据。 5.什么时候创建连接请求等待队列?它有何作用?与accept有什么关系 listen函数的调用创建了请求等待队列。它是存储客户端连接请求信息的空间。accept函数调用后,将从本地存储的连接请求信息取出,与客户端建立连接。 7.题目回家写一下 第五章 基于tcp(二)回声服务器端无事,回声客户端不妥,write函数马上接read函数,是否能完全接到所有数据,是否需要等待。 5.2 tcp原理read和write都有缓冲,函数调用一瞬间是向缓冲输入或者读取数据。 此处有5.6道题 请写一下 第六章 基于UDP流控制是UDP和TCP区别的重要标志。 这里也有题目 已连接套接字和未连接与同一主机长时间通话,可将套接字转为已连接,提高效率。 第七章 优雅断开套接字连接半关闭,能有效解决close的问题,就是最后一点数据收不到的问题。输入流和输出流,可以关一个,不用两个都关。 1.解释TCP中“流”的概念。UDP中能否形成流?请说明原因 udp不形成流,因为udp不相互连接。 第八章 域名及网络地址域名和IP转换的学习是因为,客户知道网址发送信息后,需我们转换成ip和端口号才能接收到包。 第九章 套接字的多种可选项套接字可选项能查看修改套接字里面的信息。 SO_REUSEADDR先发fin的才有time_wait,time_wait会使服务器锁定此套接字,如果服务器有其他事情,就会被稍作耽搁,所以可以修改此标题为true,就可以再time wait的情况下分配此套接字。 TCP_NODELAYNagle算法流水线 第十章多进程服务器端 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 9:58:09- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |