这个叫什么?Write Up吗 lab0 lab0要做的事,实现buffer部分的功能,要自己写变量以及实现接口. 成员函数 write()向buffer内写数据,peek_out()  pop_out()  read()  函数从buffer内读数据, buffer长度capacity,需要变量记录向buffer内一共写入和读取过多长的数据. 有些变量在后面的lab会用上,第一次写真不容易想,好些都是参照别人的博客写的. lab1 // Construct a `StreamReassembl…
本文为我的斯坦福计算机网络课的编程实验(Lab Assignments)的学习总结.课程全称:CS 144: Introduction to Computer Networking. 事情发生于我读了半本<计算机网络:自顶向下方法>后,想要找点练手的东西,碰巧在知乎上看到了这个推荐帖:CS144: 什么,你学不会TCP?那就来自己写一个吧!.这门课的作业要求实现一个简单的TCP协议,自带充足评测程序,同时又比较有挑战性,我便欣然做之. LAB0 在我开始做实验的时候官方不知为何已经删掉了spo…
计算机组成原理: UCB的这门课绝对是不错的资源. Great Ideas in Computer Architecture (Machine Structures) B站:https://www.bilibili.com/video/BV1PV411U7Hv?from=search&seid=15452546263176877018 course website:https://cs61c.org/fa20/ 网站做的很炫酷有dark mode,LAB的质量也非常高,有详细的文档,介绍每一个l…
CS144的实验就是要实现一个用户态TCP协议,对于提升C++的水平以及更加深入学习计算机网络还是有很大帮助的. 第一个Lab是环境配置和热身,环境按照文档里的配置就行了,前面两个小实验就是按照步骤来的,就不细讲了. Writing webget 这一个实验是要用他封装好的socket库写一个简单的http客户端.看看文档里Address和TCPSocket类的介绍就行了. void get_URL(const string &host, const string &path) { TCP…
这段时间开始复习计算机网络,看到帧封装这一节,结合以前的课程设计,就用C写了个帧封装的程序,说实话C学的确实不怎么样,实现的时候对于文件操作那部分查了好多资料,下面说说帧封装是啥情况. 学过计算机网络的都知道,数据的传输都是以固定的格式进行传输,在计算机当中是以二进制的数据进行传输,在网络通信中, “帧” 指通信中的一个数据块.但是帧在数据链路层传输的时候是有讲究的,不是随便的封装和打包就可以传输,大小有限制,最小46字节,最大1500字节所以我们必须按照这个规则来封装,具体的原因有兴趣的可以参…
传输控制协议(Transmission Control Protocol) 概念 一种面向连接的.可靠的.基于字节流的传输层通信协议,由IETF的RFC 793定义.在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议. 主要特点 (1)TCP是面向连接的运输层协议.这就是说,应用程序在使用TCP协议之前,必须先建立TCP协议.在传送数据完毕后,必须释放已经建立的TCP连接.类似于“打电话”,需要先拨号建立连接,通话完之后要挂机释…
这是 MIT 6.824 课程 lab1 的学习总结,记录我在学习过程中的收获和踩的坑. 我的实验环境是 windows 10,所以对lab的code 做了一些环境上的修改,如果你仅仅对code 感兴趣,请移步 : github/zouzhitao mapreduce overview 先大致看一下 mapreduce 到底是什么 我个人的简单理解是这样的: mapreduce 就是一种分布式处理用户特定任务的系统.它大概是这样处理的. 用户提供两个函数 mapFunc(k1,v1)-> lis…
目录 网络应用数据交换 P2P应用:原理与文件分发 纯P2P架构 文件分发:客户机/服务器 vs. P2P CS 为什么是这样的?不应该传送和发出难道是并行的??? P2P P2P文件分发典型例子:BitTorrent(bit激流) 思考题 P2P应用:索引技术 P2P: 搜索信息 集中式索引 全分布非结构:洪泛式查询(Query flooding) 如何查询? 层次式覆盖网络 P2P案例应用:Skype(最成功的之一) 课后作业 Socket编程API 网络程序设计接口主要类型 理解应用编程接…
计算机网络基础之TCP/IP 协议栈 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.TCP/IP 协议栈概述 1>.什么是TCP/IP协议栈 Transmission Control Protocol/Internet Protocol 传输控制协议/因特网互联协议 TCP/IP是一个Protocol Stack,包括TCP.IP.UDP.ICMP.RIP.TELNET.FTP.SMTP.ARP等许多协议 最早发源于美国国防部(缩写为DoD)的因特网的前身ARPA网项目,…
[计算机网络]-网络层-Internet的网络层 Internet是一组相互连接的网络或者自治系统的集合 Internet 1.存在几个主要骨干网络,骨干网络是由高带宽的线路和快速路由器构成 2.这些骨干网络中最大的一个称为一级网络,每个骨干网都与它连接,进而达到其他骨干网 3.连接在骨干网络上的是ISP 4.ISP为家庭和企业.数据中心和服务器托管设施,以及区域(中级)网络提供接入Internet服务 5.连接在区域网络上是更多ISP.许多大学和公司局域网和其他边缘网络 Internet是相互…