1 网络分类:

  1 按照范围:

    - 局域网:范围很小的网络,如一间办公室,一个公司

    - 城域网:大致城市范围内的网络,半径几公里到几十公里

    - 广域网:比城域网范围更大的

2 网络衡量标准

  1 传输速率:数据的传输速度,表示在单位时间内传输多少bit的数据,创建单位b/s,kb/s,Mb/s,Gb/s

  2 带宽:通信信道所能传输的最高数据频率

  3 吞吐量:单位时间内,通过网络设备的数据流量

  4 时延:从发出数据到对方收到数据的时间差

    - 传输时延:数据发送,接收所需的时间

    - 传播时延:电信号/光信号在介质上传播的时间

    - 处理时延:交换设备在进行存储转发时所需时间

    - 排队时延:数据排队等待的时间

3 网络编程几个重要的术语

  - 服务器:提供服务的一方(硬件,软件的集合)

  - 客户端:请求服务的一方(软件),常见的客户端如浏览器,QQ/微信

  - 通信:在客户端和服务器之间的数据传输过程

  - 协议:数据组织,编码,传输,校验,解码的规则

4 网络通信过程

  第一步:找到对方IP地址,通过DNS将域名转换成IP

    - DNS(Domain Names System)

    - Windows下,更改网络适配器->网络连接右键->属性->Internet协议版本4

    - Linux下,位于/etc/resolv.conf文件中

  第二步:建立连接

  第三步:发送连接

  第四步:释放连接

5 OSI七层参考模型

  OSI:开放式系统互联模型

  ISO:国际标准化组织

  - 应用层:Application,提供给用户,表示实现的功能

  - 表示层:Presentation,数据的编码,压缩,优化

  - 会话层:Session,建立到应用的连接,选择合适的传输服务

  - 传输层:Transportation,提供传输层服务,负责进程和进程之间的通信,通信可靠性

  - 网络层:NetWork,远程主机之间的通信,两个重要功能:寻址和分段

  - 数据链路层:Datalink,负责相邻主机之间的通信,网卡工作在数据链路层

  - 物理层:Physical,定义机械,电器物理标准

  

  七层模型的优点:

    1 定义了网络通信标准

    2 层次清晰,各司其职

    3 通过分层,降低了通信各阶段的耦合性

  七层模型的缺点:

    1 只提出一个模型,没有实现

    2 分层过细,应用不方便

6 TCP/IP四层模型(目前互联网使用的模型)

  - 应用层(ISO七层模型的五,六,七层)

  - 传输层(ISO七层模型的传输层)

  - IP层(ISO七层模型的网络层)

  - 数据接口层(ISO七层模型的一,二层)

7 协议栈:各层次协议的统称

  - 应用层:HTTP(超文本传输协议),FTP(文本传输协议),TELNET(远程登录),POP3/SMTP(邮件接收,发送)

  - 传输层:TCP(传输控制协议,可靠性传输),UDP(用户报文协议,不可靠传输)

  - IP层:IP(寻址,分段),ICMP(网络故障诊断),ARP/RARP(地址解析/方向地址解析 IP->MAC MAC->IP)

  - 数据链路层:FDDI(光通信协议),Ethernet(以太网协议),PPP(点到点协议)

  - 屋里层:IEEE

8 传输层协议

  TCP:传输控制协议

    - 可靠传输

    - 面向连接

    - 用于数据量大,可靠性高的通信

    - 效率低

  UDP:用户报文协议(DNS,QQ)

    - 不可靠传输

    - 面向非连接

    - 用户数据量小,可靠性要求低的通信

    - 效率高

9 IP地址

  - 版本:IPv4,IPv6

  - IPv4地址构成:32bits,一般采用点分十进制表示方式,如:192.168.1.1

  - 网络地址,主机地址

    网络地址:网络编号,相同的网络地址属于同一个网段

    主机地址:主机在网段下的序号

  - IP地址分类

    A类:网络地址8bits,主机地址24bits

    B类:网络地址16bits,主机地址16bits

    C类:网络地址24bits,主机地址8bits

  - 特殊IP地址:

    127.0.0.1      #本机IP

    0.0.0.0         #本机上所有IP地址

    主机地址全部为0   #网络地址 如:192.168.1.0

    主机地址全部为1   #广播地址 如:192.168.1.255

day01_概念的更多相关文章

  1. 性能测试day01_性能基本概念

    其实第一次接触性能是15年的时候,懵懵懂懂的被领导拉去做第一次做性能压测,如今有机会重新听一下云层大大讲解性能,于是打算以此博客记录下整个学习的过程,如若有不同意见者可以在下面留言指出,也欢迎大家一起 ...

  2. 如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念

    一.前言     DDD(领域驱动设计)的一些介绍网上资料很多,这里就不继续描述了.自己使用领域驱动设计摸滚打爬也有2年多的时间,出于对知识的总结和分享,也是对自我理解的一个公开检验,介于博客园这个平 ...

  3. 【Machine Learning】机器学习及其基础概念简介

    机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

  4. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)

    集群概念介绍(一)) 白宁超 2015年7月16日 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习 ...

  5. 声音分贝的概念,dBSPL.dBm,dBu,dBV,dBFS

    需要做个音频的PPM表,看着一堆的音频术语真是懵了,苦苦在网上扒了几天的文档,终于有了点收获,下面关于声音的分贝做个总结. 分贝 Decibel 分贝(dB)是一个对数单位(logarithmic u ...

  6. js面向对象学习 - 对象概念及创建对象

    原文地址:js面向对象学习笔记 一.对象概念 对象是什么?对象是“无序属性的集合,其属性可以包括基本值,对象或者函数”.也就是一组名值对的无序集合. 对象的特性(不可直接访问),也就是属性包含两种,数 ...

  7. 【Linux大系】Linux的概念与体系

    感谢原作者:Vamei 出处:http://www.cnblogs.com/vamei 我在这一系列文章中阐述Linux的基 本概念.Linux操作系统继承自UNIX.一个操作系统是一套控制和使用计算 ...

  8. KOTLIN开发语言文档(官方文档) -- 2.基本概念

    网页链接:https://kotlinlang.org/docs/reference/basic-types.html 2.   基本概念 2.1.  基本类型 从可以在任何变量处理调用成员函数和属性 ...

  9. .NET面试题系列[5] - 垃圾回收:概念与策略

    面试出现频率:经常出现,但通常不会问的十分深入.通常来说,看完我这篇文章就足够应付面试了.面试时主要考察垃圾回收的基本概念,标记-压缩算法,以及对于微软的垃圾回收模板的理解.知道什么时候需要继承IDi ...

随机推荐

  1. fun()()() ---- 函数的嵌套

    结果--"嘿嘿"

  2. Hibernate核心对象

    1.Configuration Configuration 类负责管理Hibernate的配置信息.它包括如下内容: Hibernate运行的底层信息:数据库的URL.用户名.密码.JDBC驱动类,数 ...

  3. 鲜为人知的 Python 语法

    所有人(好吧,不是所有人)都知道 python 是一门用途广泛.易读.而且容易入门的编程语言.   但同时 python 语法也允许我们做一些很奇怪的事情.   使用 lambda 表达式重写多行函数 ...

  4. Day5 JDBC

    JDBC的简介 Java  Database Connectivity:连接数据库技术. SUN公司为了简化.统一对数据库的操作,定义了一套Java操作数据库的规范(接口),使用同一套程序操作不同的数 ...

  5. c++ 堆和栈以及区别

    c++中内存分成5个区:堆.栈.自由存储区.全局\静态存储区.常量存储区 栈是一种连续存储的数据结构,具有先进后出的性质.堆是一种非连续的树形存储数据结构,每个节点有一个值,整棵树是经过排序的,特点是 ...

  6. no.random.randn

    numpy中有一些常用的用来产生随机数的函数,randn就是其中一个,randn函数位于numpy.random中,函数原型如下: numpy.random.randn(d0, d1, ..., dn ...

  7. error: OpenCV Error: Assertion failed (0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows) in cv::Mat::Mat

    问题原因: You are probably working outside of the image dimensions. Does any of the values you pass to t ...

  8. maven +IEDA+log4j

    一.pom.xml加入log4j的依赖包 <!-- 日志文件管理包 --><dependency>    <groupId>log4j</groupId> ...

  9. HashTable、HashSet和Dictionary的区别(转载)

    1.HashTable哈希表(HashTable)表示键/值对的集合.在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类 ...

  10. 通过脚手架创建Vue项目

    第一步 准备工作 1.下载安装Node.js 验证是否安装的方法,在命令行输入node -v 2.安装Vue 在命令行输入npm install -g @vue/cli 查看Vue版本号 npm vu ...