网络编程

Posted wangjian941118

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络编程相关的知识,希望对你有一定的参考价值。

网络基础相关的知识

1.架构

  a. c / s 架构:client客户端 和 server服务端

  优点:能充分发挥pc机的性能

  b. b / s 架构 browser 浏览器和server服务器 隶属于 c / s架构

  b / s 架构 统一了应用的接口

2. 通信的事

  a.同一台电脑上两个py程序通信 打开一个文件

  b.两个电脑如何通信: 连同一根网线

  c.多台电脑通信

    ex:电脑1(源)要找电脑2(目标)

    电脑1首先发送一个请求帧,其中包含(我的ip是xxx,我的mac地址是xxx,我要找的ip地址是xxx的主机)

将此请求发送给交换机,交换机要广播这条消息给其他所有的主机,目标主机接收到消息后,对比发现自己就是被

找的主机,回复给交换机信息(我的ip为xxx,我的mac地址是xxx,请回复给ip地址为xxx,mac地址为xxx的主机)

  交换机单播的形式返回给源主机

知识总结

1.mac地址: 是一个物理地址,全球唯一,类似于身份证

2.ip地址: 是一个四位点分十进制,它标识了计算机在网络中的位置(类似于学号)

3.交换机的通信方式

广播:"吼一下"

单播:一对一

组播:一对多

4.arp协议: 通过目标ip地址获取目标mac地址的一个协议

5.端口: 操作系统为本机上每一个运行的程序都随机分配一个端口,其他电脑上的程序可以通过端口获取到这个程序

6.路由器:连接不同网段,路由

7.网管: 类似于一个局域网的出口和入口

8.网段:一个局域网内的ip地址范围

9.子网掩码: 子网掩码&ip地址得到网段

10.osi五层模型

应用层:  http, https, ftp

传输层:  tcp/udp    四层交换机 四层路由器

网络层:  ip协议    路由器 三层交换机

数据链路层:  arp协议    以太网交换机 网卡 网桥

物理层:  传输电信号    集线器 网线 光钎

 

以上是关于网络编程的主要内容,如果未能解决你的问题,请参考以下文章

Linux高级网络编程系列教程

Linux高级网络编程系列教程

面向对象编程面向组件编程面向方面编程面向服务编程

编程范式:命令式编程(Imperative)声明式编程(Declarative)和函数式编程(Functional)

少儿编程教育未来前景如何?我想加入少儿编程这行。

TCP/IP网络编程——理解网络编程和套接字编程