第一节

适用人群
大纲

一、开头XMind

1、基础知识

路由器、交换机
静态路由、动态路由
局域网、以太网、无线局域网
DNS、CDN、VPN、NAT
MAC、iPv4、iPv6、端口
子网划分、子网掩码

2、参考模型

7层(OSI)
4层(TCP/IP)
5层

应用层、报文
传输层、段
网络成、包
数据链路层、帧
物理层、比特流

3、主要协议

UDP

报文格式

TCP

报文格式
连接管理 (三次握手、四次挥手)
可靠传输
流量控制
拥塞控制

HTTP

代理
缓存
Web Service、SOAP、RESTful
请求
响应

HTPS

对称加密
非对称加密
摘要算法
数字证书
SSL、TLS

4、实战工具

Xshell、Wireshark
telnet、tcpdump
Cisco Packet Tracer
Socker、爬虫

5、其它协议

ARP、RARP、DHCP、ICMP
FTP、WebSocket
路由协议 >(RIP、EIGRP、OSPF)
流媒体> (RTMP、HLS) >(RTSP、RTP、TRCP)
即时通讯>(XMPP、MQTT)
电子邮件> IMP4、SMTP、POP3

二、学习中需要搭建的环境

客户端-服务器开发环境
客户端:浏览器(HTML+CSS+JS)
服务器:Java
网络抓包
浏览器(Chrome、Firefox)、Fiddler、Wireshark
模拟工具
Xshell(只有Windows版)、PacketTracer、GNS3

三、客户端-服务器

客户端

移动端开发(Android、iOS)
嵌入式开发(C、C++、汇编)
前端开发(HTML、CSS、Java、Script)

服务器

java、C++、PHP、.NET、Python、Go

四、C\C++的跨平台原理

代码.c \ .cpp-> 编译(PE格式、Mach-O、ELF格式) -> (Windows、Mac、Linux)

  • C\C++代码的跨平台:适用平台相关的编译器生成对应平台的可执行文件

五、java的跨平台原理

.java->编译->.Class(字节码文件) ->加载-> Windows(jvm)、Mac(jvm)、Linux(jvm)

1、java代码经过编译后生成.Class文件
2、对应平台的操作系统首先运行JVM程序
3、JVM程序加载.Class文件
4、JVM将.Class翻译成机器指令

JVM由谁提供呢?
sun公司在2009年将java以74亿美元的价格卖给Oracle公司

Oracle提供JDK
JDK包含JRE(Java Runtime Environmental)
有了JRE就有了JVM

六、必装工具

JDK
Tomcat
Intellij IDEA UItimate

七、客户端VS服务器

服务器

80端口监听发过来的数据
服务端软件站用80端口监听发过来的数据
经过处理将返回数据还是通过80端口返回数据

客户端上安装着很多软件比如说他们都是腾讯的并且后台服务器都是同一个,那么客户端会向同一个服务器发请求,又比如说用的是同一个端口,那么站用这个端口的恶服务器软件会根据客户端发来的数据判断该转发给哪个服务,处理后通过相同的端口返回 。
如果有人害怕80端口撑不住,那么可以把再运行个服务器软件站用别的端口,然后把别的服务拿过来。
如果有人害怕这个机器撑不住,那就再来一台机器。


image.png

java中最出名的服务器软件就是tomCat了因为它是免费开源的。
服务端要想接受用户请求,那么首先要在一个端口运行tomCat,然后在tomCat上部署开发人员的java代码。

时间点1:01:20

八、什么是协议

租房协议
用来约束双方,规定每个人能干什么不能干什么。减少共同成本。
如果租房协议有一个国家标准或国际标准。那么你不管找谁租房子拿到的协议都是一样的。那么很少有东西需要阅读了。
那么我们今天学的网络协议也是一样的。规定各端能干什么不能干什么。
世界上有很多客户端,也有很多服务器,如果没有东西约束双发,那么就没法沟通了。

九、网络互连模型

为了更好地促进网络的研究和发展,国际标准化组织ISO在1985年定制了网络互连模型
OSI参考模型(Open System Interconnect Reference Model),具有7层结果

OSI参考模型:国际标准

应用层、表示层、会话层、运输层、网络层、数据链路层、物理层

TCP/IP协议:实际应用的

应用层、运输层、网际层、网络接口层

TCP/IP协议将OSI参考模型中的应用层表示层会话层合并为一个应用层,将数据链路层物理层合并为一个网络接口层

学习研究
有些高校的书为了学习数据链路层所以又有了5层

应用层、运输层、网际层、数据链路层、物理层

十、请求过程

image.png

十一、互联网

image.png

你可能感兴趣的:(第一节)