- 先说下我的知识储备:目前只会C、和数据结构
- 再说下我学习计算机网络时的困惑:感觉不管哪章,里面的东西都特别抽象,因为没条件对里面每个东西进行实际考察,只能通过文字学习,可结果是:*里面的东西太抽象*,*看完就忘*都看了两个月了,现在除了记了些关于计算机网络的名词。其他什么都没学会。感觉*根本没法入门*(用“*”号括起来的,就是我存在的问题、很严重的问题)。
- 我想问的是因为我知识储备不够,才记不住、学不会?还是我的学习方法不对?还是这门课对学生要求比较低,我对自己的要求太高了?顺便问一下,为什么可多人都是只关注应用层和运输层,怎么感觉大部分人对下三层不太关注???
计算机网络是一门需要动手实践的学科,这点其实和编程很像。无论看多么牛X编程教科书,无论看多少遍,只要不动手去写代码,要不了多久就全还给课本了。
计算机网络可能比编程还要难得一点是,编程只要有一台电脑,一个编译环境就可以动手操练,虽然从入门到精通需要大量的代码实践,但是好在看得见摸得着,脚踏实地的感觉棒棒的。
计算机网络动手操练,需要有一个实验环境,需要大量的硬件设备,这是一笔很大的投入。如果纯粹看理论,没有动手实践,看完问问自己,记住了哪些知识点?这些知识点可以帮助自己去排除网络故障吗?答案往往是否定的,看书的过程有一种浪费光阴的虚度感!意志力薄弱的同学,实在难以为继,最后就放弃了!
初学者刚开始学习时,不要好高骛远,要脚踏实地,只要想动手,随时都可以的。从最简单的地方入手,看看同事的电脑的IP是多少,然后Ping 一下,看看能否Ping通?用抓包软件把Ping报文捕获下来,问问自己,为何在整个通信过程自己只提供了IP地址,报文里除了IP地址外,还有二层头、IP头、还有ICMP消息头,这些信息自己并没有提供,他们是如何生成的?是谁生成的?
万事开头难,刚开始甚至都没有学会如何看电脑的IP,在哪里可以Ping,如何使用抓包软件,但是如果真的想去学好计算机网络,这些都是小问题。如果每次通信前,都需要到对方的电脑上查看对方的IP地址然后才能通信,那实在是太不方便了。回忆一下我们平常都是怎样去使用电脑通信的?很少有直接输入IP地址的场合。
访问网页,要么直接输入网址、要么搜关键字,获得网址的链接直接点击进入,然后将链接保存在收藏里,下次直接点击进入。但是网址并不能直接用来通信,需要使用
域名解析。
访问公司邮件,邮件客户端自动会发现邮件服务器,这同样需要域名服务器提供
域名解析支持。如果邮件里嵌入了超级链接,可以直接点击访问。
访问共享文件夹,直接打开网上邻居,可以看到主机列表,直接点击主机就可以通信。
以上各种应用场合,没有一个需要用户输入IP地址的场合。用户不需要输入,做为网络工程师,却要深刻地知道这一切都是怎么发生的,为什么要这么来设计。
当用户需要输入IP地址的时候,往往意味着网络出故障了。
初学者再次看到DNS Server时,就会明白原来DNS是如此的重要,基本上所有的通信都离不开它,当你怀揣好奇再去学习DNS时,不会感觉那么枯燥!
计算机网络,提供的是管道服务,像自来水管一样单纯。发送方Bob向管道里注入一吨液体,接收方Alice就接收到整整一吨液体,不多一滴也不少一滴。当然这是完美的理想,而现实往往并不是这样的。
真实的情况是这样的:Bob与Alice之间自来水管,每隔几公里都有一个蓄水池(增压泵),这个蓄水池有若干个进水管,也有若干个出水管,如果进入管的整体流速> 出水管的整体流速,那么这两者的流量差就会被临时缓存在蓄水池里。稍后如果进入管的整体流速 < 出水管的整体流速,那么蓄水池里的水就可以乘机流走。
但是如果进入管的整体流速> 出水管的整体流速一直持续,多出来的水蓄水池容不下了,多出来的水就溢出了。
这溢出的水是永远都无法到达目的地的,对吗?
这个蓄水池有一个专业的名字:路由器,由于蓄水池无法补偿溢出的水,自然就需要有一个流量补偿机制,来补偿流量丢失,那么谁来补偿呢?
肯定不能网络来补偿,网络一直以
无状态(Stateless)为首要目标,
如果让网络来补偿流量,自然就需要网络来记忆状态,这点是难以接受的,网络将有可能被严重套牢!
最终流量补偿机制的重担就落在了流量发送方Bob的身上,实现这个流量补偿机制的代码赫赫有名,它的名字就是
TCP!
TCP大佬实现流量补偿机制,其实很简单,就一句话:
确认机制!
一旦流量到达接收方,需要接收方Alice明确确认到达,否则TCP大佬会周期性使用
流量补偿(重传)机制。
所以TCP是一个需要记忆
状态(State)的代码,它本质是Stateful的!
用日常生活中栩栩如生的场景,来理解计算机网络世界里的虚头八脑的抽象描述,会有事半功倍的奇效!
如何成为会员?
公众号后台发关键字“会员群”,获取报名链接。《VLAN》这本教材,仅分发给2019年12月31日24点前加入的会员! 将会在2020年元旦集中分发,请勿提前索取!