python已经可以做很多的东西了。但是要想要和别人互联互通就会涉及到一个关键的模块socket!值得一提的是,其实socket不是python独创的一种模块,而是任何语言都会有的一个部分!自己的程序和别的电脑进行连接的时候都会用到这个方式!
但是,首先还是来看看网络通信的相关的知识,然后再慢慢的了解socket!
其实根据不同的场景大概可以分为两种情况:C/S架构和B/S架构
C/S架构的意思就是客户端和服务端的连接方式。就像是手机上的...
目录
网络架构及其演变过程
单机架构
CS架构
BS架构
BS架构和CS架构的区别
C/S架构的优缺点:
B/S架构的优缺点:互联网与互联网的组成
互联网的组成(教科书版)
互联网的组成(科普版)OSI七层协议
物理层
数据链路层
以太网协议
Mac地址
广播地址网络层
传输层
应用层Socket抽象层
Socket抽象层网络架构及其演变过程
单机架构
单机:顾名思义,就是不需要进行联网操作应用领域俄罗斯方块
连连看CS架构CS架构:C--client--客户端,...
网络知识总结理论知识结构 在出试题之前,根据本课程的学习及之前的网络知识学习总结计算机网络协议栈:计算机网络有两种分层模型,即OSI模型和TCP/IP模型,OSI有7层,TCP/IP则将网络分为4层,OSI模型是规定的标准,而现在TCP/IP模型是事实上的网络标准,所以我们结合两者,一般都说TCP/IP 5层模型,下面给一张图来说明: 关于计算机网络理论知识的学习,一般都是围绕着TCP/IP 5层模型来学习各层上的协议,比如重要的TCP协议、IP协...
代码地址:https://gitee.com/chuangshi96/androidwangluobiancheng
① 打开AndroidStudio
② 新建一个空的工程 File->New->New Project
③ 如图第一行为APP工程名称,第二行不用管,第三行为工程路径 然后点Next
④ 按照如图设置(默认)根据自己的实际要求选择SDK版本(若自己的安卓手机的安卓版本为7.0,则8.0的工程没法安装在自己的手机上),点击Next
⑤ 选择空的工程点击Next
⑥...
一丶tcp为什么称为可靠协议(流式协议)
TCP之所以可靠的原因在于:反馈机制
发送消息后必须等到对方回应 才会将内存中的数据清除
双向通道,数据传输安全
意外断开,一段时间会重复等待连接,过后再断开连接
二丶UDP为什么被称为不可靠协议(数据报协议)
无需双向通道
数据是不安全的
服务端不存在,也可以发消息但是数据会丢失
三丶两者区别
UDP跟TCP的区别:1.多个客户端可以实现并发的效果2.服务端不存在 客户端也不会报错(sendto)3.不...
# OSI 七层结构 (理论)# TCP/IP 四/五层机构 (实际)# 协议: 为网路中数据交换而建立的规则约定## 学习总结# 应用层 :## 传输层 : 端口层通信 (端口) 端口范围0-65535,0-1023为系统占用端口# 端口即应用程序与网卡关联的编号。# 端口回收# 1 TCP | UDP 可靠传输|不可靠传输# 2 传输(三次握手) 请求 响应+请求 响应 建立连接 断开连接(四次挥手) C传输完成(请求) S响应 S传输完成(请求) C响应## 网络层 : 网络层通...
C/C++网络通讯真正要用起来,不但要写一个好的网络服务器,还要定好一套通讯协议才能真正实用。
通讯协议业界目前除了用开源的如XMPP以外,基本上都是自定义一套通讯协议,自已负责封包,拆包。为什么要自己定义协议包呢?一个原因是因为真正的业务逻辑往往都是复杂的,不会是很单纯的字符串或数字。再参考前面写的<<网络编程(7)字节序对跨平台数据传输的影响>>就应当知道,通讯时网络传输是以字节为单位的。这一串串数据流在交互,...
网络编程就是通过网络协议在多个计算机网络连接进行通信。
java.net 包中提供了两种常见的网络协议的支持:TCP:TCP 是通过建立连接,进行通信的安全的网络协议,被称 TCP / IP,安全但效率比较低。UDP:UDP 一个无连接的协议。应用程序之间通过发送数据包进行通信,可能会丢包,不安全但效率高。UDP
UDP协议编程。
服务端
1,首先需要通过DatagramSocket绑定本地的一个端口,绑定后其他计算机才能通过本机IP地址加端口来访问。
2,...
网络编程Socket之RST详解
产生RST的三个条件:目的地为某端口的SYN到达,然而该端口上没有正在监听的服务器;
TCP想取消一个已有的连接;
TCP接收到一个根本不存在的连接上的分节;
现在模拟上面的三种情况:
client:
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <errno.h>#define SERV_PORT 8000int main()
{struct sockaddr_in serverAdd;bzero(&se...
需要在linux平台上实现代码。
安装虚拟机。我安装的是ubuntu。
安装clion。网上有流程,百度clion在linux下的安装步骤。我装的是2020.1版的。主要步骤就是下载,解压,然后运行.sh文件,一直next就好了。
.sh文件是什么?脚本文件,一般都是bash脚本,一系列命令的集合。
代码参考(复制)的是https://github.com/yingcheng-zhou/socket-reading-and-writing
评论里看到这位大佬根据老师的课程写的,我先参考,跑通。
打开安装好的...
转自:http://blog.csdn.net/majianfei1023/article/details/45788591
要了解socket可读可写条件,我们先了解几个概念:1.接收缓存区低水位标记(用于读)和发送缓存区低水位标记(用于写):
每个套接字有一个接收低水位和一个发送低水位。他们由select函数使用。
接收低水位标记是让select返回"可读"时套接字接收缓冲区中所需的数据量。对于TCP,其默认值为1。
发送低水位标记是让select返回"可写"时套接字发送缓冲区中所需的可...
一、ip地址
1. 什么是地址
地址就是用来标记地点的
2. ip地址的作用
ip地址:用来在网络中标记一台电脑,比如192.168.1.1;在本地局域网上是唯一的。
3. ip地址的分类
每一个IP地址包括两部分:网络地址和主机地址
3.1 A类IP地址
一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”,
地址范围1.0.0.1-126.255.255.254
二进制表示为:00000001 00000000 00000000 00000001 - 01111110 1111111...
一、为什么要学习socketpython基础部分已经学完了,而socket是我们基础进阶的课程,也就是说,你自己现在完全可以写一些小程序了,但是前面的学习和练习,我们写的代码都是在自己的电脑上运行的,虽然我们学过了模块引入,文件引入import等等,我可以在程序中获取到另一个文件的内容,对吧,但是那么突然有一天,你的朋友和你说:"把你电脑上的一个文件通过你自己写的程序发送到我的电脑上",这时候怎么办?你是不是会想,what?这...
一、选择题
1、Internet的前身是 C 。
A、Intranet B、Ethernet C、ARPAnet D、Cernet
2、Internet的核心协议是 B 。
A、X.25 B、TCP/IP C、ICMP D、UDP
3、服务与协议是完全不同的两个概念,下列关于它们的说法错误的是 D 。
A、协议是水平的,即协议是控制对等实体间通信的规则。服务是垂直的,即服务是下层向上层通过层间接口提供的。
B、在协议的控制下,两个对等实体间的通信使得本层...
20175312 2018-2019-2 实验五 网络编程与安全 实验报告
【正在完成】
实验要求
实验内容与运行结果实验五 网络编程与安全-1两人一组结对编程:参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA
结对实现中缀表达式转后缀表达式的功能 MyBC.java
结对实现从上面功能中获取的表达式中实现后缀表达式求值的功能,调用MyDC.java
上传测试代码运行结果截图和码云链接截图如下:实验五 网络编程与安全-2结对编程:1人负责客户端,...