TCP/IP 网络精讲:开宗明义及第一课
内容简介
1、课程大纲
2、第一部分第一课:互联网历史
3、第一部分第二课预告:互联网的创立,OSI七层模型
课程大纲
我们将带大家一起来学习很多网络方面的技能,向大家介绍TCP/IP的基础知识点。你也将学会如何搭建自己的网络,以及解决一些上网时遇到的难题。
如果你没有任何网络基础,没有关系,这个课程是面向所有人的。
这将是一次浩瀚的旅程:鹰击长空,鱼翔浅底,万类霜天竞自由(小编你可以了...)
我们的课程分为四大部分:
如何在本地网络进行通信
- 互联网的历史
- 互联网的创立,OSI七层模型
- OSI第一层:连接你的机器
- OSI第二层:使机器相互通信
- OSI第二层的设备:交换机
- 实践
网间通信
- OSI第三层
- 地址范围分割
- 路由
- 其他的协议
应用间通信
- 什么是应用
- 使应用可被连接
- NAT和端口映射
- 回顾
网络服务
- DHCP服务
- DNS服务
- Web服务
- 实践:搭建小型公司网络
第一部分第一课:互联网的历史
在20世纪50年代,通信的方式还是“点对点”,就是说一次只能和一台机器通信。当时的网络先驱者们在开会的时候,想要跟好几个同事通信,怎么办呢?于是他们想到假如可以实时地与多人进行通讯,比依次和每一个人通信来得要好得多。
于是,他们设计了网状的通信方式,以取代传统的集中式的通信方式。
集中式的通信网络
这就意味着信息可以在不同的结点之间传递,即使有些结点消失了,也不会阻碍信息的传播。在下图中,我们可以看到:借着网状的通信形式,假如一个结点出问题了,信息流可以走别的路径。
网状的通信网络
既然理念已经有了,接下来就要实现它。
但要实现谈何容易,网络的先驱者们一开始是为军方设计网络。到了20世纪60年代初才编纂了初步描述互联网的档案。
在20世纪60年代末,Arpanet("阿帕"(ARPA),是美国高级研究计划署(Advanced Research Project Agency)的简称),互联网的前身,才出现。Arpanet只包括四台机器。当时使用的网络协议并没有使Arpanet达到预期的目标,因为对于来自不同网络的机器还是使用着不同的通信技术。
于是,网络的先驱者们绞尽脑汁,终于设计出了一种新的通用的网络通信协议,就是伟大的TCP/IP协议(Transmission Control Protocol 传输控制协议 / Internet Protocol 互联网协议)。互联网继续发展,但是直到1990年才有了重大变革:HTML语言的发明和HTTP协议的创立,网页由此诞生!
随着第一代能够显示图片,开放域名使用的浏览器的出现,互联网的发展脚步大大加快。我们可以在下图中看到1990-2000年间的显著飞跃
当今, 互联网上有 18 亿 网民 和 2 亿台 服务器。
世界上的网民分布很不均匀:
42%的网民来自亚洲
网民比例最多的国家是:韩国
78%的美国人有互联网,而在非洲只有10%
世界上每3个人中就有一个人上网
2000-2010年的网民人数翻了4,5倍
2000-2010年非洲的互联网增长了2360%
不必再举例了,这些数据足以显明互联网的重要性。再来看下面这幅图,展示的是互联网上相互连接的机器,拿起放大镜来仔细瞧瞧吧
当然了,不要忘了我们的首要目的:理解互联网的运作机制。所以停止幻想,来干正事吧。
第一部分第二课预告:互联网的创立,OSI七层模型
今天的课就到这里,第一次课不能让大家太累着,不过从明天开始,我们就正式学习TCP/IP和互联网的知识了。一起加油吧。
程序员联盟
微信公众号*您若觉得本文不错,请点击“分享”
*新朋友请关注「程序员联盟」微信搜公众号
ProgrammerLeague
“程序员联盟”公众号专为程序员,App设计师,各位喜爱编程和热爱分享的小伙伴们推送各样编程相关知识,优秀软件推荐,业界动态等。搜索
ProgrammerLeague 加关注~
持续关注 程序员联盟 微信公众号,更多有趣,有料,有亮点的内容等着你哦!
TCP/IP 网络精讲:开宗明义及第一课的更多相关文章
- TCP/IP 网络精讲:OSI七层模型(第二课)
内容简介 1.前言 2.第一部分第二课:互联网的创立,OSI七层模型 3.第一部分第三课预告:OSI第一层,连接你的机器 前言 PS:昨天做了课程大纲之后,发现这个坑挖得有点大.不过既然挖了,岂有不跳 ...
- TCP/IP网络协议栈(转载)
原文:http://www.cnblogs.com/xuanku/p/tcpip.html TCP/IP网络协议栈分为四层, 从下至上依次是: 链路层 其实在链路层下面还有物理层, 指的是电信号的传输 ...
- TCP/IP网络编程之I/O流分离
分离I/O流 “分离I/O流”是一种常用表达,有I/O工具可以区分二者.无论使用何种办法,都可以认为分离I/O流.我们之前通过两种方法分离I/O流,第一种是TCP/IP网络编程之进程间通信中的“TCP ...
- TCP/IP网络编程之多播与广播
多播 多播方式的数据传输是基于UDP完成的,因此,与UDP服务端/客户端的实现非常接近.区别在于,UDP数据传输以单一目标进行,而多播数据同时传递到加入(注册)特定组的大量主机.换言之,采用多播方式时 ...
- TCP/IP网络编程之多进程服务端(二)
信号处理 本章接上一章TCP/IP网络编程之多进程服务端(一),在上一章中,我们介绍了进程的创建和销毁,以及如何销毁僵尸进程.前面我们讲过,waitpid是非阻塞等待子进程销毁的函数,但有一个不好的缺 ...
- TCP/IP网络编程之套接字类型与协议设置
套接字与协议 如果相隔很远的两人要进行通话,必须先决定对话方式.如果一方使用电话,另一方也必须使用电话,而不是书信.可以说,电话就是两人对话的协议.协议是对话中使用的通信规则,扩展到计算机领域可整理为 ...
- tcp/ip网络里的客户端和服务器端 信息交流 与 安全
ISP(Internet Service Provider) 互联网服务提供商, 即向广大用户综合提供互联网接入业务.信息业务.和增值业务的电信运营商. 通过wireshark学习tcp/ip. 用w ...
- 《TCP/IP网络编程》
<TCP/IP网络编程> 基本信息 作者: (韩)尹圣雨 译者: 金国哲 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ISBN:9787115358851 上架时间:2014-6- ...
- TCP/IP网络知识点总结
学完了计算机网络是时候整理一篇总结了,温故知新.注意:这篇博客很长长长(2.5万字+50图). TCP/IP网络知识点总结 一.总述 1.定义:计算机网络是一些互相连接的.自治的计算机的集合.因特网是 ...
随机推荐
- Android中倒计时代码
布局: maina.xml <DigitalClock android:id="@+id/myClock" android:layout_width="wrap_c ...
- 一个用js写的接口http调试程序
公司有非常多手机app的项目.手机app又要常常訪问后台提交与查询数据. 所曾经端app与后台的开发与測试过程中接口调试是一个常常要做的工作. 而每当出现一个BUG,前端appproject师与后台p ...
- __iomem解析
以下是在学习电池驱动中遇到的知识点之_iomem A new I/O memory access mechanism Most reasonably current cards for the PCI ...
- VC++ 在两个文件互相包含时会出现的错误
首先,要分别在两个文件中实现以下两个类 class Object { public: NewType ToType(); }; class NewType : public Object { } -- ...
- duilib底层机制剖析:窗口类与窗口句柄的关联
转载请说明原出处.谢谢~~ 看到群里朋友有人讨论WTL中的thunk技术,让我联想到了duilib的类似技术. 这些技术都是为了解决c++封装的窗口类与窗口句柄的关联问题. 这里是三篇关于thunk技 ...
- dede 标签
◆织梦内容管理系统模板标签代码参考 [Arclist 标记] 这个标记是DedeCms最常用的一个标记,也叫自由列表标记,其中 hotart.coolart.likeart.artlist.imgl ...
- Android编程 获取网络连接状态 及调用网络配置界面
获取网络连接状态 随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能. Android平台提供了ConnectivityMan ...
- 消息队列(Message Queue)基本概念(转)
背景 之前做日志收集模块时,用到flume.另外也有的方案,集成kafaka来提升系统可扩展性,其中涉及到消息队列当时自己并不清楚为什么要使用消息队列.而在我自己提出的原始日志采集方案中不适用消息队列 ...
- Qt4.8在Windows下的三种编程环境搭建
Qt4.8在Windows下的三种编程环境搭建 Qt的版本是按照不同的图形系统来划分的,目前分为四个版本:Win32版,适用于Windows平台:X11版,适合于使用了X系统的各种Linux和Unix ...
- Setup Git Server in CentOS 6.3
0. Environment: Server machine: CentOS 6.3 x86 Client machine: Windows 10 Pro x86_64 1. Install ssh ...