El TCP es un protocolo de transporte orientado a conexión que garantiza la entrega confiable, sin errores y en orden de los datos entre dos extremos de una conexión mediante la utilización de números de secuencia, acuses de recibo y una sincronización de tres vías para el establecimiento de la conexión. La cabecera TCP contiene campos para los puertos de origen y destino, números de secuencia y acuse de recibo, indicadores de control como SYN, ACK, flags y un tamaño de ventana para la transferencia de datos.
SwOS is an operating system designed specifically for administration of MikroTik Switch products that use Switch OS (SwOS) for RB250GS and now RB260GS with SFP Port for extend the network to up to 20KM ans support VLAN and VLAN Trunk on Gigabit Ethernet.
Insights on the Configuration and Performances of SOME/IP Service DiscoveryRealTime-at-Work (RTaW)
Scalable Service-Oriented Middleware on IP (SOME/IP) is a proposal aimed at providing service-oriented communication in vehicles. SOME/IP nodes are able to dynamically discover and subscribe to available services through the SOME/IP Service Discovery protocol (SOME/IP SD). In this context, a key performance criterion to achieve the required responsiveness is the subscription latency that is the time it takes for a client to subscribe to a service. In this paper we provide a recap of SOME/SD and list a number of assumptions based on what we can foresee about the use of SOME/IP in the automotive domain. Then, we identify the factors having an effect on the subscription latency, and, by sensitivity analysis, quantify their importance regarding the worst-case service subscription latency. The analysis and experiments in this study provide practical insights into how to best configure SOME/IP SD protocol.
SwOS is an operating system designed specifically for administration of MikroTik Switch products that use Switch OS (SwOS) for RB250GS and now RB260GS with SFP Port for extend the network to up to 20KM ans support VLAN and VLAN Trunk on Gigabit Ethernet.
Insights on the Configuration and Performances of SOME/IP Service DiscoveryRealTime-at-Work (RTaW)
Scalable Service-Oriented Middleware on IP (SOME/IP) is a proposal aimed at providing service-oriented communication in vehicles. SOME/IP nodes are able to dynamically discover and subscribe to available services through the SOME/IP Service Discovery protocol (SOME/IP SD). In this context, a key performance criterion to achieve the required responsiveness is the subscription latency that is the time it takes for a client to subscribe to a service. In this paper we provide a recap of SOME/SD and list a number of assumptions based on what we can foresee about the use of SOME/IP in the automotive domain. Then, we identify the factors having an effect on the subscription latency, and, by sensitivity analysis, quantify their importance regarding the worst-case service subscription latency. The analysis and experiments in this study provide practical insights into how to best configure SOME/IP SD protocol.
SystemVerilog based OVM and UVM Verification MethodologiesRamdas Mozhikunnath
Introduction to System Verilog based verification methodologies - OVM and UVM concepts
For more online courses and resources follow http://verificationexcellence.in/
I²C (Inter-Integrated Circuit), pronounced I-squared-C, is a multi-master, multi-slave, single-ended, serial computer bus invented by Philips Semiconductor (now NXP Semiconductors). It is typically used for attaching lower-speed peripheral ICs to processors and microcontrollers. Alternatively I²C is spelled I2C (pronounced I-two-C) or IIC (pronounced I-I-C).
Since October 10, 2006, no licensing fees are required to implement the I²C protocol. However, fees are still required to obtain I²C slave addresses allocated by NXP.[1]
Several competitors, such as Siemens AG (later Infineon Technologies AG, now Intel mobile communications), NEC, Texas Instruments, STMicroelectronics (formerly SGS-Thomson), Motorola (later Freescale), and Intersil, have introduced compatible I²C products to the market since the mid-1990s.
SMBus, defined by Intel in 1995, is a subset of I²C that defines the protocols more strictly. One purpose of SMBus is to promote robustness and interoperability. Accordingly, modern I²C systems incorporate policies and rules from SMBus, sometimes supporting both I²C and SMBus, requiring only minimal reconfiguration.
The Serial Peripheral Interface (SPI) bus is a synchronous serial communication interface specification used for short distance communication, primarily in embedded systems. The interface was developed by Motorola and has become a de facto standard. Typical applications include sensors, Secure Digital cards, and liquid crystal displays.
SPI devices communicate in full duplex mode using a master-slave architecture with a single master. The master device originates the frame for reading and writing. Multiple slave devices are supported through selection with individual slave select (SS) lines.
Sometimes SPI is called a four-wire serial bus, contrasting with three-, two-, and one-wire serial buses. The SPI may be accurately described as a synchronous serial interface,[1] but it is different from the Synchronous Serial Interface (SSI) protocol, which is also a four-wire synchronous serial communication protocol, but employs differential signaling and provides only a single simplex communication channel.
SystemVerilog based OVM and UVM Verification MethodologiesRamdas Mozhikunnath
Introduction to System Verilog based verification methodologies - OVM and UVM concepts
For more online courses and resources follow http://verificationexcellence.in/
I²C (Inter-Integrated Circuit), pronounced I-squared-C, is a multi-master, multi-slave, single-ended, serial computer bus invented by Philips Semiconductor (now NXP Semiconductors). It is typically used for attaching lower-speed peripheral ICs to processors and microcontrollers. Alternatively I²C is spelled I2C (pronounced I-two-C) or IIC (pronounced I-I-C).
Since October 10, 2006, no licensing fees are required to implement the I²C protocol. However, fees are still required to obtain I²C slave addresses allocated by NXP.[1]
Several competitors, such as Siemens AG (later Infineon Technologies AG, now Intel mobile communications), NEC, Texas Instruments, STMicroelectronics (formerly SGS-Thomson), Motorola (later Freescale), and Intersil, have introduced compatible I²C products to the market since the mid-1990s.
SMBus, defined by Intel in 1995, is a subset of I²C that defines the protocols more strictly. One purpose of SMBus is to promote robustness and interoperability. Accordingly, modern I²C systems incorporate policies and rules from SMBus, sometimes supporting both I²C and SMBus, requiring only minimal reconfiguration.
The Serial Peripheral Interface (SPI) bus is a synchronous serial communication interface specification used for short distance communication, primarily in embedded systems. The interface was developed by Motorola and has become a de facto standard. Typical applications include sensors, Secure Digital cards, and liquid crystal displays.
SPI devices communicate in full duplex mode using a master-slave architecture with a single master. The master device originates the frame for reading and writing. Multiple slave devices are supported through selection with individual slave select (SS) lines.
Sometimes SPI is called a four-wire serial bus, contrasting with three-, two-, and one-wire serial buses. The SPI may be accurately described as a synchronous serial interface,[1] but it is different from the Synchronous Serial Interface (SSI) protocol, which is also a four-wire synchronous serial communication protocol, but employs differential signaling and provides only a single simplex communication channel.
This presentation outlines the core functions of TCP - Transmission Control Protocol.
These comprise TCP Connection Control, TCP Flow Control, TCP Error Control, TCP Congestion Control, TCP Options and TCP Timers.
TCP/IP is the Internet core protocol that provides reliable, connection-oriented and stream-based communication service. Most of Internet traffic is carried in TCP connections, so scalability and reliability are crucial for a stable network on a global scale.
La Universidad Popular Carmen de Michelena de Tres Cantos y el Espacio de Psicología de Tres Cantos colaboran en este proyecto para familias resilientes, aquellas que están abiertas a aprender y a mejorar. Este curso vamos a trabajar sobre las interacciones humanas. Porque comunicarnos bien nos ayuda a comprendernos, a querernos y a relacionarnos mejor, pero la comunicación no es siempre una tarea fácil.
La naturaleza nos ha dotado del más complejo sistema de comunicación, es verbal y no verbal, implícita y explícita, analógica y digital, escrita y oral... Nos podemos comunicar a través de diferentes canales, en diferentes idiomas, incluso nos comunicamos con otras especies, pero paradójicamente, en múltiples ocasiones tenemos verdaderas dificultades para comunicarnos con quienes tenemos más cerca, con nuestros hijos, con nuestra pareja, en definitiva, con nuestra familia.
Durante este curso, Sara Mallo, de Espacio Psicología Tres Cantos, en el seminario de familia profundizará en la familia reconstituida y también dedicará una sesión a los abuelos.
2. TCP Header
TCP es un protocolo de transporte orientado a conexión. Esto hace que los
datos se entreguen sin errores, sin omisión y en secuencia.
Tiene las siguientes características:
· Protocolo orientado a conexión. Es decir, las aplicaciones solicitan la conexión
al destino y luego usan están conexión para entregar los datos, garantizando
que estos serán entregados sin problemas.
· Punto a punto. Una conexión TCP tiene dos extremos, emisor y receptor.
· Confiabilidad. TCP garantiza que los datos transferidos serán entregados sin
ninguna perdida, duplicación o errores de transmisión.
· Full duplex. Los extremos que participan en una conexión TCP pueden
intercambiar datos en ambas direcciones simultáneamente.
· Conexión de inicio confiable. El uso de three-way handshake garantiza una
conexión de inicio confiable y sincronizada entre los dos extremos de la
conexión.
· Conexión de finalización aceptable. TCP garantiza la entrega de todos los
datos antes de la finalización de la conexión.
(Definiciones hecho por: Luis Conde García )
Y por mi parte voy a ofrecerles definiciones y usos de cada campo de la
cabecera del TCP.
3. Source Port:
Puerto utilizado por emisor para enviar los paquetes.
Destination Port:
Puerto en la que escucha la aplicación del receptor para recibir los paquetes.
Sequence number (numero de secuencia):
Tiene como finalidad de añadir un número (secuenciado) a cada paquete y, al
ser secuenciado el receptor sabrá inmediatamente si falta algún paquete por
medio o no. En caso de que haya perdido X paquete, el receptor pide al emisor
que reenvie los paquetes perdido.
El valor de este campo varía dependiendo del SYN:
SYN flag=1: Tendrá el valor del *^1 initial Sequence Number(ISN, numero de
secuencia incial) + 1 .
SYN flag=0: Tendrá el valor de *^2 Sequence Number(SN,numero de
secuencia) del primer byte del segmento.
*^1 ISN (Initial Sequence Number)
El número de secuencia inicial es generado aleatoriamente.
*^2 SN (Sequence Number)
El número de secuencia es incrementado por cada byte de dato.
En cada fragmento puede tener varios bytes, por eso dice "primer byte del
segmento" [Understand? ;)].
Acknowledgment Number (Número de acuse de recibo):
Indica el Sequence Number del paquete que espera recibir, al mismo tiempo
está indicando que el anterior lo ha recibido correctamente.
El valor de este campo varía dependiendo del ACK:
ACK flag= 1: *^3 Valor del Sequence Number que espera recibir.
ACK flag= 0: No tendrá ningún valor puesto que no está respondiendo.
Ejm:
A: SN=A1, Acknowledgment Number=NULL
/* soy paquete A1, no espero nada*/
B: SN=B1, Acknowledgment Number=A2
/* soy paquete B1, he recibido A1 y estoy esperando A2 */
A: SN=A2, Acknowledgment Number=B2
/* soy paquete A2, he recibido B1 y estoy esperando B2 */
4. B: SN=B2, Acknowledgment Number=A3
/* soy paquete B2, he recibido A2 y estoy esperando A3 */
(...)
Data Offset o Header Lenght (Logitud de la cabecera):
Es de 4 bit (256 valores): Los valores son representado para indicar el tama?o
de la cabecera en bit.
Valor mínimo= 20 byte (32 bit de cada fila X 5 filas = 160 bit).
Valor máximo= 60 byte ((32 bit de cada fila X 5 filas = 160 bit) + 40 byte de
opciones).
Reserved (reservado):
Campo de 8 bit reservado para futuro uso (No especifica para qué).
TCP Flags (Bit de control):
CWR (Congestion Window Reduced): (En muchos sitios aparece como
reservado).
ECE (ECN-Echo):(En muchos sitios aparece como reservado).
URG (URGent Pointer):
URG=1: Indica que el campo "Urgente" es significativo.
URG=0: Indica que el campo "Urgente" es ignorado.
ACK (ACKnowledgment):
ACK=1: Indica que el campo "Acknowledgment Number" es significativo
ACK=0: Indica que el campo "Acknowledgment Number" es ignorado
PSH (PuSH Function):
PSH=1: Entrega al nivel de aplicación los datos almacenado en el buffer.
PSH=0: Los paquetes llega hasta el buffer del receptor, sin llegar al nivel de
aplicación.
RST (ReSeT the connection):
RST=1: Indica que ha recibido un "error". Ejm: un puerto inválido.
RST=0: Todo correcto.
SYN (SYNchronize sequence numbers):
SYN=1: Tendrá el valor del *^1 initial Sequence Number(ISN, numero de
secuencia incial) + 1.
SYN=0: Tendrá el valor de *^2 Sequence Number(SN,numero de secuencia)
5. del primer byte del segmento.
FIN (FINal No more data from sender):
FIN=1: Indica que es el último fragmento, indica al receptor cierre del
conexión.
FIN=0: Indica que no es el último fragmento.
Window size (Ventana):
En este campo de 16 bit, guarda el tamaño (hasta 65536 byte) que el receptor
espera recibir. El emisor no podrá enviar más datos cuando haya llegado a su
máximo, y tendrá que esperar el ACK del receptor(indicando que todos los
datos haya llegado, y que siga enviando).
Ejm:
Receptor: SN=R1 ACK=E1 Window size=15 Byte
Emisor: SN=E1 ACK=NULL #fragmento de 5 byte#
Emisor: SN=E2 ACK=NULL #fragmento de 5 byte#
Emisor: SN=E3 ACK=R2 #fragmento de 5 byte#
Receptor: SN=R2 ACK=E4 Window size=15 Byte
Checksum (Suma de verificación):
Mediante una serie de algoritmos, asegura que la cabecera y los datos no
llegen corruptos, a diferencia de IP que éste sólo comprueba la cabecera y no
los datos.
Urgent (Urgente):
Indica que desde el pricipio hasta el numero de byte del dato del fragmento
será de alto prioridad.
Un fragmento puede estar formado por parte urgente y parte normal, sólo que
al llegar al receptor éste procesará en primer lugar la parte de alta prioridad, y
los otros restante se quedará en la cola del buffer hasta que llegue otro PSH
URG flag=1: Este campo es significativo.
URG flag=0: Este campo será ignorado.
Referencias:
http://en.wikipedia.org/wiki/Transmission_Control_Protocol
http://mike.passwall.com/networking/tcppacket.html
http://www.tcpipguide.com/free/t_TCPConnectionEstablishmentSequenceNum
berSynchroniz.htm
http://www.freesoft.org/CIE/Course/Section4/8.htm
http://www.ncsa.illinois.edu/~vwelch/net_perf/tcp_windows.html