《计算机网络 第七版》读后感

2023-10-26

Computer Networking.jpg

上大学时,计算机网络是必修的一门课程。讲课的老师是学校里很资深的一个教授,非常有耐心。尽管如此,如今的我还是把那些知识都丢的所剩无几了。

其实在工作中,就算是普通的程序员,用到计算机网络的相关知识也不算少。比如:Socket。再比如:RTSP,HTTP 等协议。我虽然会用,但究竟数据在网络中是怎么流动的始终也不清楚。所以,重新学习一遍这门课程是我一直以来的心愿。

对于计算机网络的教材,就属谢希仁教授的这一本最权威,最受欢迎。事实也证明这本书确实很好,这主要体现在以下几个方面:

第一,组织结构清晰

本书以概述开篇,接着从互联网五层结构(物理层、数据链路层、网络层、运输层、应用层)入手,逐一讲解。最后,就热点问题(网络安全、互联网上的音频/视频服务、无线网络和移动网络)进行阐述。

整本书的脉络十分清晰,由基础到应用,由底层到上层。这样的结构使读者容易跟上作者的思路,学习起来也有一个过渡。在后面的章节中,多少会应用到前面章节的知识,这也使前面的基础知识得到了巩固。

第二,涉及知识全面

本书涵盖的范围比较广泛,从局域网到广域网,有线网到无线网以及相关协议都有所涉及。当然重点还是互联网。针对每一种网络,作者都对其结构、协议、性能、应用进行了讲解。这些技术,有的是标准,有的是准标准,有的还在发展当中。

在讲到一些应用时,比如:搜索引擎,还结合了当下热点的计价排名问题进行了点评,可以说是与时俱进了。

从本书中,不仅能了解到计算机网络的技术知识,也能了解到它的时代背景、进化历程和在实际应用中的现状。这些都是十分有意义的,今天看似无比复杂的计算机网络,每一个环节的设计,都是有原因的。

第三,复杂程度适宜

本书复杂程度是适宜的。没有相关知识背景的人,只要耐心去读,一定看得懂。作者在讲解的过程中,并没有一味的追求细节,而是在表达清楚原理的前提下,尽可能浅显易懂。

实际生活中的计算机网络是相当复杂的,就拿 TCP/IP 协议举例,单这一部分,就可以写出厚厚的一本书。所以,作者重点表达的是基本的概念和原理,让读者对计算机网络有一个整体的了解。至于具体的细节,还需要自己去翻阅更多的资料。

所以,本书其实更适合一个计算机网络刚入门的人看,并不特别适合专业人员去读。

第四,图文并茂

本书的图例很关键。计算机网路的一些概念原理,用文字表述起来很麻烦。有时候读了一大段,不如看一张图理解的快。书中的图例都很清晰明了,恰到好处的弥补了晦涩难懂的知识点。我强烈建议每一个人在读这本书的时候,都多多关注一下这些图例。你会发现,结合着图例去读文字,能够极大的帮助理解。

总结

正如我前面提到,这是一本入门计算机网络的好书。读完之后,对相关的原理和概念有了一个整体的理解。现在,每当我再写网络相关的代码时,脑袋里就会不由自主的浮现出数据的流动过程,仿佛是把原来隔着的那一层模糊的玻璃打破了,一起都清晰了起来。但对于网络方面的专业人士,要不要读,就另当别论了。

 
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

《计算机网络 第七版》读后感 的相关文章

  • 我的2013

    今天是2013年的最后一天 天气格外的晴朗 站在公司的写字楼上 能够看到远处的山水 一直都习惯在一年的最后总结一下 总结自己哪些地方在成长 哪些地方有收获 哪些地方需要改进 但是最近一两年来 却很难回忆一些什么 因为每天都过的差不多 今天下
  • 96道前端面试题+前端常用算法

    这篇文章主要分享一些收集整理的面试题 希望能对大家有所帮助 字节 一面 1 说一下浏览器缓存 2 cookie 与 session 的区别 3 浏览器如何做到 session 的功能的 4 解释一下 csrf 和 xss 5 怎么防止 cs
  • TypeError: load() missing 1 required positional argument: ‘Loader‘

    最近使用yaml load 时报错 TypeError load missing 1 required positional argument Loader 记录原因 YAML 5 1版本后弃用了yaml load file 这个用法 因为

随机推荐

  • 面向对象编程思想

    面向对象编程思想 Object Oriented Programming 面向过程编程思想面向过程核心思想 自顶向下 逐步求精 面向对象编程思想面向对象核心思想 以对象为单位 将解决客观世界问题的方式方法引入到编程领域中 面向对象编程是面向
  • SpringBoot 2.x应用监控配置

    Springboot 2 x应用监控 作用 用于管理 监控应用 暴露自身信息 减少应用系统在采集应用指标的开发量 1 添加依赖
  • 区块链基本概念(一)

    区块链的基本概念 其概念为 区块链是一个去中心化的分布式数据库 改数据库有一串使用密码学方法产生的数据区块有序连接而成 区块中包含有一定时间内产生的无法被篡改的数据记录信息 区块中包含数据记录 当前区块根哈希 Hash 前一区块根哈希 时间
  • Java注解与反射详解

    Java注解与反射详解 注解 Annotations 是Java语言中的一项功能强大的特性 它们提供了一种在源代码中添加元数据的方式 注解可以用于标记 配置和处理程序中的元素 如类 方法 字段等 而反射 Reflection 是Java的一
  • 鸿鹄工程项目管理系统em Spring Cloud+Spring Boot+前后端分离构建工程项目管理系统

    Java版工程项目管理系统 Spring Cloud Spring Boot Mybatis Vue ElementUI 前后端分离 功能清单如下 首页 工作台 待办工作 消息通知 预警信息 点击可进入相应的列表 项目进度图表 选择 总体或
  • [羊城杯 2023] web

    文章目录 D0n t pl4y g4m3 D0n t pl4y g4m3 打开题目 可以判断这里为php Development Server 启动的服务 查询得知 存在 PHP lt 7 4 21 Development Server源码
  • 第5讲 Java注释详解

    您的 关注 和 点赞 是认可 是支持 是动力 如意见相佐 可留言 本人必将竭尽全力试图做到准确和全面 终其一生进行修改补充更新 本文首发在IT羊资源网 IT羊资源网 网址 https www ityangzy com IT羊资源网是IT世界
  • 从零开始编写JNI

    最近项目中用到了JNI 本以为很简单的 没想到花了我一天的时间才搞定 主要是在过程中遇到了一个大坑 下面就详细说说 出现的问题是这样的 代码一运行到System loadLibrary xxx 时 就提示java lang Unsatisf
  • 修改omv的国内镜像服务器,Openmediavault教程 篇二:软件源的更改以及社区插件启用...

    Openmediavault教程 篇二 软件源的更改以及社区插件启用 2021 01 11 17 54 49 6点赞 28收藏 16评论 更改软件源之前需要先将社区插件启用 这样就可以一起将源改变成国内镜像 这样免得后面安装插件的时候又要重
  • ubuntu 20.04 安装 微信,QQ等客户端,一键安装,亲测成功,最新更新,优麒麟

    之前一直使用网页版微信 但是聊天记录完全无法存留 一旦断网就会退出登录 然后每次登录都要确认 很麻烦 要是有ubuntu下的微信客户端就好了 但是并不是所有的客户端都一样好用 博主安装并实测了几个ubuntu下的微信客户端 发现基于wine
  • 第一个爬虫程序,基于requests和BeautifulSoup

    断断续续学了1年多python 最近总算感觉自己入门了 记录下这几天用requests和BeautifulSoup写的爬虫 python的环境是anaconda pycharm 直接上代码 requires authorization 作者
  • Shopify如何使用Google的站长工具

    Shopify在做SEO的时候 Google为我们提供了一个简单的工具 让我们了解它如何看待您的网站 哪些问题可能会影响您的流量 以及您如何改进网站以获得更好的排名和结果 这个工具就是 Google Search Console 这个工具已
  • 深度优先算法dfs

    转载https blog csdn net u014394715 article details 51192293 深度优先算法 定义 深度优先搜索算法 英语 Depth First Search 简称DFS 是一种用于遍历或搜索树或图的算
  • 小程序字符串提取图片地址src导致苹果手机体验版白屏

    小程序开发中想把一段html字符串里图片的src取出来 这段html字符串如下图 var srcReg lt src ig 正则 var imgarr content match srcReg content就是图中的字符串 得到的imga
  • 微信小程序使用setData修改数组中的指定下标的属性值

    注释的比较详细 就不过做多解释了 index js 获取应用实例 const app getApp Page 这里data就是你当前界面所有的值 包括你后期动态添加的值都在这里 data list 定义数组 number 1 number
  • shell 脚本里的命令嵌套

    shell 脚本里的命令执行 1 在bash中 与 反引号 都是用来作命令替换的 命令替换与变量替换差不多 都是用来重组命令行的 先完成引号里的命令行 然后将其结果替换出来 再重组成新的命令行 与 在操作上 这两者都是达到相应的效果 但是建
  • thinkphp验证规则

    thinkphp6可以通过验证器验证数据表的字段 规则 验证条件加表名 如uniqu admin user 示例如下 protected rule username 用户名 gt require chsDash unique admin u
  • Java基础-匿名内部类

    匿名内部类可以作为方法的实际参数进行传输
  • JavaScript 数组中常用的方法

    添加 push 数组末尾添加 unshift 数组首位添加 splice 1 0 新增内容 再指定位置插入 第二参数为0 表示新增 大于0 表示修改 删除 pop 删除末尾 shift 删除首位 slice 0 1 删除指定数据 不会改变原
  • 《计算机网络 第七版》读后感

    上大学时 计算机网络是必修的一门课程 讲课的老师是学校里很资深的一个教授 非常有耐心 尽管如此 如今的我还是把那些知识都丢的所剩无几了 其实在工作中 就算是普通的程序员 用到计算机网络的相关知识也不算少 比如 Socket 再比如 RTSP