1、什么是计算机网络,通信方式是什么?

计算机网络就是通过通信线路相互连接的计算机的集合,主要通过双绞线、同轴电缆、电话线或者光缆等有形传输介质通信,还有就是通过激光、微波、卫星等实现无线通信

2、WAN和LAN

广域网和局域网,局域网通常有较高的通信速率,有限的地理范围,为一个部门所有

3、TCP/IP协议的基本思想

通过网间连接器,也就是gateway将各种不同的网络连接起来,在各个网络的低层协议之上构造一个虚拟的大网,使用户和其他网的通讯就像和与本网的主机通信一样方便

4、OSI的七层协议

物理层:bit信息,硬件连接的接口

数据链路层:通信信道的无差错传输,提供数据组帧,差错控制、流量控制、链路控制

网络层:将数据正确迅速地从源主机到目的主机,寻址以及相关的流量控制和拥塞控制

------前三层构成通信子网层,与硬件相关,为网络的上层(资源子网)提供通信服务

传输层:为上层处理过程掩盖下层结构的细节,保证把会话层的信息有效地传到另一个方的会话层

会话层:提供服务请求者和提供者之间的通信,实现两端主机之间的会话管理,传输同步和活动管理等

表示层:实现信息转换,包括信息压缩,加密,代码转换以及上述操作的逆操作

应用层:为用户提供常用的应用,比如e-mail,文件传输,网页浏览等

5、TCP/IP的网络体系架构

SMTP DNS HTTP FTP TELNET
TCP UDP NVP
IP ICMP ARP RARP(反向ARP)
以太网   PDN(公共数据网) 其他
电话线 同轴电缆 光缆

6、IP地址的三种基本类型

  • A类地址   W的高端位为0,有126个A类地址,分配给拥有大量主机的网络
  • B类地址   由W.X表示网络ID,高端前2bit为二进制10,分配中等规模的网络,有16384个B类地址
  • C类地址 前3bit为110,大约有200万个C类地址,每个网络只有254个主机,用于小型局域网
类型   IP地址 网络地址 主机ID
A W.X.Y.Z W X.Y.Z
B W.X.Y.Z W.X Y.Z
C W.X.Y.Z W.X.Y Z

7、网络服务

  • 文件服务   有效存储,恢复和移动数据文件,执行数据的读、写、访问控制以及数据的管理操作,可以实现计算机之间的文件传输、文件转储、文件更新以及文件归档等
  • 打印服务  用于控制和管理网络打印机和传真设备的 网络服务,实现打印机硬件资源共享
  • 信息服务  动态处理网络各个节点计算机用户之间,应用程序之间的通信,提供了通信工具
  • 应用服务  协调网络间的硬和软件资源,建立一个最适合的平台来运行应用软件
  • 数据库服务  共享数据的存储,查询,管理和恢复等

Linux网络编程学习(一) ----- 概论和Linux模型(第一章第二章)的更多相关文章

  1. Linux网络编程学习(十一) ----- 五种I/O模式(第六章)

    1.五种I/O模式是哪几个? 阻塞I/O,非阻塞I/O,I/O多路复用,信号驱动I/O(SIGIO),异步I/O 一般来讲程序进行输入操作有两个步骤,一是等待有数据可读,二是将数据从系统内核中拷贝到程 ...

  2. Linux网络编程学习路线

    转载自:https://blog.csdn.net/lianghe_work/article 一.网络应用层编程   1.Linux网络编程01——网络协议入门 2.Linux网络编程02——无连接和 ...

  3. Linux网络编程学习计划

    由于网络编程是很重要的一块,自己这一块也比较欠缺,只知道一些皮毛,从今天开始系统学习<Linux网络编程>一书,全书分为十四个章节: 第一章   概论   P1-16 第二章   UNIX ...

  4. linux网络编程学习笔记之四 -----多-threaded服务器

    对于使用过程中并发.通过实现更轻量级线程. 每个线程都是一个独立的逻辑流. 主题是CPU在执行调度的最小独立单位,这个过程是资源分配单元.当然,这是在微内核操作系统说.总之,这是唯一的一个操作系统内核 ...

  5. linux网络编程学习笔记之五 -----并发机制与线程�

    进程线程分配方式 简述下常见的进程和线程分配方式:(好吧,我仅仅是举几个样例作为笔记...并发的水太深了,不敢妄谈...) 1.进程线程预分配 简言之,当I/O开销大于计算开销且并发量较大时,为了节省 ...

  6. linux网络编程学习笔记之三 -----多进程并发服务端

    首先是fork()函数.移步APUE 8.3.  比較清晰的解释能够參考http://blog.csdn.net/lingdxuyan/article/details/4993883和http://w ...

  7. Linux网络编程学习(十二) ----- 结语

    该书提前看完了,重点看了第四章和第六章,第七章以后只是大致浏览了一下,如果以后工作中涉及这一块再仔细研究一下,大概花了二十天的样子,主要了解了进程间的通信方式.socket编程以及五种I/O模式,看的 ...

  8. Linux网络编程学习(十) ----- Socket(第六章)

    前言:由于第五章主要介绍了TCP和UDP协议以及两者的包头的字段以及相应的功能,这里就不介绍了,对着字段看功能就好了,后续开始学习第六章 1.Socket Socket实质上就是提供了通信的端点,每个 ...

  9. Linux网络编程学习(九) ----- 消息队列(第四章)

    1.System V IPC System V中引入的几种新的进程间通信方式,消息队列,信号量和共享内存,统称为System V IPC,其具体实例在内核中是以对象的形式出现的,称为IPC 对象,每个 ...

随机推荐

  1. 关于Ctime库

    --------------------- 本文来自 Fuko_Ibuki 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_31908675/article/de ...

  2. freeswitch黑名单mod_blacklist使用

    freeswitch自带黑名单模块"mod_blacklist",此文只是对该模块简单使用的实例. 最近接到客户投诉有大量骚扰电话,而从源头查不太容易,因此想到的笨方法是将投诉人加 ...

  3. 关于函数式编程(Functional Programming)

    初学函数式编程,相信很多程序员兄弟们对于这个名字熟悉又陌生.函数,对于程序员来说并不陌生,编程对于程序员来说也并不陌生,但是函数式编程语言(Functional Programming languag ...

  4. 学习笔记TF038:实现估值网络

    Q-Learning,学习Action对应期望值(Expected Utility).1989年,Watkins提出.收敛性,1992年,Watkins和Dayan共同证明.学习期望价值,从当前一步到 ...

  5. Python3 Flask+nginx+Gunicorn部署(上)

    前言:一般在本地运行flask项目通常是直接python3 文件名.py,然后打开:http://127.0.0.1:5000 查看代码结果 这次主要是记录flask在python3 环境结合ngin ...

  6. MVC 模式

    1.MVC 模式简介 MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式.这种模式用于应用程序的分层开发.Model(模型):模型代表一个存取数据的对象或 JAV ...

  7. 使用rpm 打包开发的postgres extension

      环境准备 安装依赖包 rpmdevtools rpm-build yum install -y rpm-build rpmdevtools 初始化rpm pacakge 项目 主要是rpm 打包的 ...

  8. Nginx反向代理tomcat返回400 bad request

    Nginx反向代理tomcat返回400 bad request nginx 版本1.12, tomcat版本 9.06 最近用Nginx做反向代理tomcat,实现前后端分离,nginx 将请求代理 ...

  9. Linux whereis命令详解

    Linux whereis命令 Linux whereis命令用于查找文件. 该指令会在特定目录中查找符合条件的文件.这些文件应属于原始代码.二进制文件,或是帮助文件. 该指令只能用于查找二进制文件. ...

  10. QT QHttpMultiPart上传图片

    使用get请求或post请求可以传递简单的参数,但要上传图片到服务器,就要多做一些工作了,如下代码片段利用post请求可成功上传图片到服务器: QNetworkRequest request; req ...