自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

郑亚帅

热爱编程,享受生活!

  • 博客(25)
  • 收藏
  • 关注

转载 一个并发10k的简易群聊天室(使用epoll)

local.h点击(此处)折叠或打开#include sys/socket.h>#include sys/epoll.h>#include netinet/in.h>#include arpa/inet.h>#include fcntl.h>#include unistd.h>#include stdio.

2017-01-20 19:09:18 725

转载 Linux epoll模型

定义:  epoll是Linux内核为处理大批句柄而作改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著的减少程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。因为它会复用文件描述符集合来传递结果而不是迫使开发者每次等待事件之前都必须重新准备要被侦听的文件描述符集合,另一个原因就是获取事件的时候,它无须遍历整个被侦听的描述符集,只要遍历那些被

2017-01-20 16:56:49 188

转载 Linux网络编程16——I/O复用之epoll详解

一、epoll概述epoll 是在 2.6 内核中提出的,是之前的 select() 和 poll() 的增强版本。相对于 select() 和 poll() 来说,epoll 更加灵活,没有描述符限制。epoll 使用一个文件描述符管理多个描述符,将用户关系的文件描述符的事件存放到内核的一个事件表中,这样在用户空间和内核空间的 copy 只需一次。二、epoll操作过程需

2017-01-14 17:21:24 301

转载 Linux网络编程15——I/O复用之poll详解

一、回顾前面的selectselect优点:目前几乎在所有的平台上支持,其良好跨平台支持也是它的一个优点select缺点:1.每次调用 select(),都需要把 fd 集合从用户态拷贝到内核态,这个开销在 fd 很多时会很大,同时每次调用 select() 都需要在内核遍历传递进来的所有 fd,这个开销在 fd 很多时也很大。2

2017-01-14 17:19:55 314

转载 Linux网络编程14——I/O复用之select详解

一、I/O复用概述I/O复用概念:解决进程或线程阻塞到某个 I/O 系统调用而出现的技术,使进程不阻塞于某个特定的 I/O 系统调I/O复用使用的场合:1.当客户处理多个描述符(通常是交互式输入、网络套接字)时,必须使用I/O复用。2.tcp服务器既要处理监听套接字,又要处理已连接套接字,一般要使用I/O复用。3.如果一个服务器既要处

2017-01-14 14:30:14 267

转载 Linux网络编程13——connect()、listen()和accept()三者之间的关系

一、tcp编程的核心步骤二、connect()函数分析对于客户端的 connect() 函数,该函数的功能为客户端主动连接服务器,建立连接是通过三次握手,而这个连接的过程是由内核完成,不是这个函数完成的,这个函数的作用仅仅是通知 Linux 内核,让 Linux 内核自动完成 TCP 三次握手连接(三次握手详情,请看《浅谈 TCP 三次握手》),

2017-01-14 14:29:23 250

转载 Linux网络编程11——tcp、udp迭代服务器

一、迭代与并发服务器概述服务器设计技术有很多,按使用的协议来分有 TCP 服务器和 UDP 服务器,按处理方式来分有迭代服务器(循环服务器)和并发服务器。在网络程序里面,一般来说都是许多客户对应一个服务器(多对一),为了处理客户的请求,对服务端的程序就提出了特殊的要求。目前最常用的服务器模型有:迭代服务器:服务器在同一时刻只能响应一个客户端的

2017-01-14 12:12:04 341

转载 Linux网络编程10——TCP编程之服务器

一、做为 TCP 服务器需要具备的条件呢?1.具备一个可以确知的地址( bind() ):相当于我们要明确知道移动客服的号码,才能给他们电话;2.让操作系统知道是一个服务器,而不是客户端( listen() ):相当于移动的客服,他们主要的职责是被动接听用户电话,而不是主动打电话骚扰用户;3.等待连接的到来( accept() ):移动客服时刻等待着,来一个客户接听一个

2017-01-14 12:10:56 250

转载 Linux网络编程09——TCP编程之客户端

一、TCP概述TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP 具有以下特点:1)电话系统服务模式的抽象2)每一次完整的数据传输都要经过建立连接、使用连接、终止连接的过程3)可靠、出错重传、且每收到一个数据都要给出相应的确认,保证数据传输的可靠性

2017-01-14 12:09:29 237

转载 Linux网络编程08——多播

转自:http://blog.csdn.net/tennysonsky/article/details/44493407一、概述单播用于两个主机之间的端对端通信,广播用于一个主机对整个局域网上所有主机上的数据通信。单播和广播是两个极端,要么对一个主机进行通信,要么对整个局域网上的主机进行通信。实际情况下,经常需要对一组特定的主机进行通信,而不是整个局域网上的所有主机,这就是多播的用

2017-01-14 12:02:24 215

转载 Linux网络编程07——广播

概述在生活中广播无处不在,像平时在大街上卖物品的商人,在进行推广产品的时候往往都是使用一个喇叭来进行吆喝:“十块钱买不了吃亏,十块钱买不了上当,走过路过千万不要错过”,这就是广播。那么在网络中的广播又是什么样子的呢?网络上的广播指:由一台主机向该主机所在子网内(同一个局域网)的所有主机发送数据的方式。如下图的 1 号主机广播给 2、3、4、5

2017-01-14 11:52:02 237

转载 Linux网络编程06——UDP协议编程

一、概述UDP 是 User Datagram Protocol 的简称, 中文名是用户数据报协议,是一个简单的面向数据报的运输层协议,在网络中用于处理数据包,是一种无连接的协议。UDP 不提供可靠性的传输,它只是把应用程序传给 IP 层的数据报发送出去,但是并不能保证它们能到达目的地。由于 UDP 在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速

2017-01-14 11:50:36 177

转载 Linux网络编程05——C/S与B/S架构的区别

一、概述在这个信息急剧膨胀的社会,我们不得不说人类正进入一个崭新的时代,那就是信息时代。信息时代的一个主要而显著的特征就是计算机网络的应用。计算机网络从最初的集中式计算,经过了Client/Server阶段(有两层C/S和三层C/S),已发展到目前最流行的 Browser/Server计算模式。其中颇具争论和影响力的是C/S以及B/S架构,C/S是一种历史悠久且技术非常成熟的架构,

2017-01-14 11:49:45 434

转载 Linux网络编程12——浅谈 TCP 三次握手和四次挥手

一、tcp协议格式二、三次握手在 TCP/IP 协议中,TCP 协议提供可靠的连接服务,采用三次握手建立一个连接。 第一次握手:建立连接时,客户端发送 syn 包(tcp协议中syn位置1,序号为J)到服务器,并进入 SYN_SEND 状态,等待服务器确认; 第二次握

2017-01-14 11:45:33 238

转载 Linux网络编程04——套接字

一、套接字概述套接字是一种通信机制(通信的两方的一种约定),凭借这种机制,不同主机之间的进程可以进行通信。我们可以用套接字中的相关函数来完成通信过程。套接字的特性有三个属性确定,它们是:域(domain),类型(type),和协议(protocol)。二、套接字的域域指定套接字通信中使用的网络介质。最常见的套接字域是 AF_I

2017-01-13 18:03:52 267

转载 Linux网络编程03——字节序和地址转换

一、字节序的概念字节序是指多字节数据的存储顺序,在设计计算机系统的时候,有两种处理内存中数据的方法:大端格式、小端格式。小端格式(Little-Endian):将低位字节数据存储在低地址。大端格式(Big-Endian):将高位字节数据存储在低地址。举个简单的例子,对于整形 0x12345678,它在大端格式和

2017-01-13 18:02:29 283

转载 Linux网络编程02——无连接和面向连接的区别

网络编程中最基本的概念就是面向连接(connection-oriented)和无连接(connectionless)协议。尽管本质上来说,两者之间的区别并不难理解,但对那些刚刚开始进行网络编程的人来说,却是个很容易混淆的问题。这个问题与上下文有些关联:很显然,如果两台计算机要进行通信,就必须以某种形式“连接”起来,那“无连接通信”又是什么意思呢?答案是:面向连接和无连接指的都是

2017-01-13 18:01:13 245

转载 Linux网络编程01——网络协议入门

为了使各种不同的计算机之间可以互联,ARPANet指定了一套计算机通信协议,即TCP/IP协议( 族 ),它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了网络的原理。因为这些协议实在太复杂、太庞大,这里只是整理一个简洁的框架,帮助大家从总体上把握它们。一、概述1.1 模型为了减少协议设计的复杂性,大多数网络模型

2017-01-13 18:00:21 264

转载 视频带宽计算公式(码流_分辨率_帧率)

码流  码流(Data Rate)是指视频文件在单位时间内使用的数据流量,也叫码率或码流率,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是Kb/s或者Mb/s。一般来说同样分辨率下,视频文件的码流越大,压缩比就越小,画面质量就越高。码流越大,说明单位时间内取样率越大,数据流,精度就越高,处理出来的文件就越接近原始文件,图像质量越好,画质越清晰,要求播放设备的解码能力也越高。

2017-01-12 19:07:42 3341

转载 码流 / 码率 / 比特率 / 帧速率 / 分辨率 / 高清

1, 码流 /码率 / 比特率 / 帧速率 / 分辨率 码流 / 码率  码流(Data Rate)是指视频文件在单位时间内使用的数据流量,也叫码率或码流率,通俗一点的理解就是取样率,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是kb/s或者Mb/s。一般来说同样分辨率下,视频文件的码流越大,压缩比就越小,画面质量就越高。码流越大,说明单位时间内取样率越大,数据流,精度就越

2017-01-12 19:06:25 787

转载 带宽计算方法

一,基本概念  1.帧率:就是在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次,通常用fps(Frames Per Second)表示。每一帧都是静止的图象,快速连续地显示帧便形成了运动的假象。高的帧率可以得到更流畅、更逼真的动画2.比特率:是指每秒传送的比特(bit)数。单位为bps(BitPerSecond),比特率越

2017-01-11 14:31:20 54117

转载 基于RTP的FEC前向丢错算法

2017-01-11 12:17:27 1014

转载 什么是FEC/NACK

FEC (Forward Error Correction) 中文叫前向纠错 前向纠错技术(Forward Error Correction)在确保信号的长距可靠传输方面也起着非常重要的作用,逐渐成为必不可少的主流技术。这里借用光通讯的图来描述FEC的基本原理。图1 FEC在光通信中的位置  FEC技术是一种广泛应用于通信系统中的编码技术。以典型

2017-01-11 10:33:50 2448

转载 网络传输上的一种QoS方案

QoS出现的背景:而当网络发生拥塞的时候,所有的数据流都有可能被丢弃;为满足用户对不同应用不同服务质量的要求,就需要网络能根据用户的要求分配和调度资源,对不同的数据流提供不同的服务质量:1、对实时性强且重要的数据报 文优先处理;2、对于实时性不强的普通数据报文,提供较低的处理优先级,网络拥塞时甚至丢弃。为了满足上述需求,QoS出现了,定义如下:QoS(Qua

2017-01-11 10:32:30 2375

转载 ffmpeg指令

(经常用到ffmpeg 做一些视频数据的处理转换等,用来做测试,今天总结了一下,参考了网上部分朋友的经验,一起在这里汇总了一下,有需要的朋友可以收藏测试一下,有问题欢迎在下面回帖交流,谢谢;by ternence.hsu)1、ffmpeg使用语法命令格式:    ffmpeg -i [输入文件名] [参数选项] -f [格式] [输出文件]    ffm

2017-01-09 16:08:32 499

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除