Nabto SDK Nabto Serial Link Protocol

Size: px
Start display at page:

Download "Nabto SDK Nabto Serial Link Protocol"

Transcription

1 Nabto SDK Nabto Serial Link Protocol Nabto/001/TEN/011 Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 1 of 23

2 Vocabulary Contents 1 Vocabulary Introduction Access control Connection type Access control check Protocol details Binary protocol Layers Commands NSLP version request NSLP version report Notification Query request Query response Event data push Event data acknowledge Stream request Stream response Stream data Queries Get gateway information Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 2 of 23

3 Vocabulary 6.2 Access control Get users from access control list Add user to access control list Remove user from access control list Get allow remote access Set allow remote access Get default local permissions Set default local permissions Get default remote permissions Set default remote permissions Gateway configuration Get communications port bitrate Set communications port bitrate Get alternative device id Set alternative device id Get alternative HTML device driver Set alternative HTML device driver IO pin control Get pin mode Set pin mode Get digital pin value Set digital pin value Streams Multiplexed stream Non- multiplexed stream Forced non- multiplexed stream Check list for device application creators Maximum packet length Full duplex communication Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 3 of 23

4 Vocabulary 1 Vocabulary ACL Access Control List. The method used for permitting and denying specific user actions. Client Command Device Device Command Device query Gateway Gateway Command Gateway query Local connection NSLP Query Remote connection Communications port A Nabto client. Either a Nabto enabled browser or an application using the client API. Used for communication between Gateway and Device. A unit using the Gateway to communicate with Nabto clients. A command sent from the Gateway to the Device. A query forwarded by the Gateway and handled by the Device. Device queries have a query identifier in the range [0x x7FFFFFFF]. A unit implementing the NSLP protocol to function as a gateway between Nabto clients and a Device. A command sent from the Device to the Gateway. A query handled by the Gateway. Gateway queries has a value query identifier in the range [0x xFFFFFFFF]. A connection to the Gateway from a client located on the same physical network as the Gateway. Nabto Serial Link Protocol. Used for communication between Gateway and Client. A connection to the Gateway from a client not located on the same physical network as the Gateway. The port through which the gateway communicates with the device (i.e. the serial port). Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 4 of 23

5 Introduction 2 Introduction This document is the specification of the Nabto Serial Link Protocol (NSLP). Previous knowledge of Nabto is required to read this specification. Please refer to Nabto s starter kit documentation on nabto.com/technology for a detailed description of Nabto. The NSLP protocol is designed to expose a device as a Nabto enabled device using a gateway device like the Nabto userver. This setup is illustrated below. Figure 1 A setup using an NSLP gateway. 3 Access control The NSLP gateway provides access control based on the client s id ( ) and connection type. Furthermore, as the client s id is (optionally) sent to the Device along with forwarded requests fine- grained custom access control can be implemented on the Device. 3.1 Connection type The Gateway distinguishes between clients connected to the same physical network as the Gateway and those that are not. When a client is located on the same physical network, the connection type is denoted local. In all other cases, the connection type is remote. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 5 of 23

6 Protocol details 3.2 Access control check For a query or stream request from a client to pass the access control one of the following checks must pass: 1. The user must be locally connected, be present in the ACL and have assigned both LOCAL_ACCESS permission and whatever permissions are required by the request. 2. The user must be remotely connected, be present in the ACL and have assigned both REMOTE_ACCESS permission and whatever permissions are required by the request. Remote access must be enabled. 3. The user must be locally connected and the default local user is assigned both LOCAL_ACCESS permission and whatever permissions are required by the request. 4. The user must be remotely connected and the default remote user is assigned both REMOTE_ACCESS permission and whatever permissions are required by the request. Remote access must be enabled. The table below lists the permissions a user can be assigned. Index Name Description 0 Local access Permit local connection establishment. 1 Remote access Permit remote connection establishment. 2 Gateway request Permit execution of requests on the gateway. 3 Device request Permit execution of requests on the device. 4 Multiplexed stream Permit creation of a multiplexed stream. 5 Non- multiplexed stream Permit creation of a non- multiplexed stream. 6 Forced non- multiplexed stream Permit creation of a forced non- multiplexed stream. 7 Access control Permit interaction with the access control settings. 8 IO control Permit control of the IO pins. 9 Configuration Permit interaction with the gateway configuration. 4 Protocol details The Device communicates with the Gateway using commands. A command consists of a command identifier and, if appropriate, one or more parameters. This section describes this protocol in details. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 6 of 23

7 Protocol details 4.1 Binary protocol The following describes the binary protocol using a layered architecture Layers NSLP applications NSLP Server NSLP Client Application layer NSLP Server API NSLP Client API Transport layer NSLP Binary Transport NSLP Binary Transport Link layer NSLP Binary Link NSLP Binary Link Physical layer Communications port Communications port NSLP applications NSLP Server Implemented by Nabto NSLP Client Implemented by the customer to interface with a NSLP gateway. Builds on top of the NSLP client API. A demonstration implementation is provided by Nabto Application layer Exposes the NSLP command API to applications Responsibilities Construction of outgoing packets and decoding of incoming packets. Converts from NSLP endianness to host endianness (where necessary) NSLP Server API Exposes the commands relevant for a server application NSLP Client API Exposes the commands relevant for a client application Transport layer (NSLP Binary Transport - NBT) Provides reliable transfer of packets between two NSLP nodes Responsibilities Transmission and reception of packets. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 7 of 23

8 Commands Checksum generation and check to detect damaged packets. Sequence number generation and check to avoid duplicated packets Interface Send Receive The checksum is the ones - complement sum of all header and payload bytes. During checksum calculation, the checksum field in the header must be zero Link layer (NSLP Binary Link - NBL) Responsibilities Transmission and reception of frames. Framing. Byte stuffing Interface void Send(uint8* frame, uint16 framelength) uint16 Receive(uint8* frame) The standard link layer protocol for NSLP is SLIP. Please refer to RFC1055 for details on SLIP Physical layer The actual physical layer depends on the physical platform used. The general term communication port is used which will in most applications be a UART Interface void Write(uint8) uint8 Read() uint16 CanWrite() uint16 CanRead() 5 Commands This section describes the commands provided by the NSLP protocol for communication with the Device. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 8 of 23

9 Commands Commands can originate from either the Gateway or the Device. Both the Gateway and the Device send commands in a stop- and- wait manner in which the other end must acknowledge a packet (if appropriate) before the next packet can be sent. As a result, both ends must be able to accept a command while waiting for an acknowledge packet. The table below lists the data types used in commands. NSLP operates in big endian mode. Name C equivalent Description uint8 uint8_t A single byte interpreted as an unsigned number in the range 0 through 255. int8 int8_t A single byte interpreted as a signed number in the range through 127. uint16 uint16_t Two bytes interpreted as an unsigned number in the range 0 through int16 int16_t Two bytes interpreted as a signed number in the range through uint32 uint32_t Four bytes interpreted as an unsigned number in the range 0 through int32 int32_t Four bytes interpreted as a signed number in the range through uint8[] uint8_t[] A sequence of bytes proceeded by a uint16 indicating the number of bytes. string uint8[] An array of bytes as above with a terminating zero at the end to make it a correct C style string. Encoding is UTF NSLP version request Requests the version of the NSLP protocol in use on the other NSLP node. Source: Gateway, Device Command identifier: Parameters: None Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 9 of 23

10 Commands 5.2 NSLP version report Informs the receiving node of the version of the NSLP in use on the transmitting node. Source: Gateway, Device Command identifier: Parameters: Field Data type Description Major version uint32 The major part of the NSLP version number. Minor version uint32 The minor part of the NSLP version number. 5.3 Notification A notification informs the Device that an event has occurred on the Gateway. Source: Gateway Command identifier: Parameters: Field Data type Description Event uint32 The event identifier. See the list below. The list below enumerates the possible events. Identifier Event 1 Ethernet link state changed from down to up. 2 Ethernet link state changed from up to down. 3 DHCP assignment succeeded. 4 Connection to GSP established. 5 Connection to GSP lost. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 10 of 23

11 Commands 6 Event data queue is now empty. 7 Non- multiplexed stream opened. 5.4 Query request The Query Request command is sent to the Device, when the Gateway receives a Device Query i.e. a query not intended for the Gateway itself. A device may also use this command to execute queries on the Gateway. Source: Gateway, Device Command identifier: Parameters: Field Data type Description Flags uint32 Bit 0: fromlocalnetwork. This bit is set if the request originated from the LAN. Bit 1: fromserialport: This bit is set if the request originated from the serial port. All other bits are reserved for future use and should be ignored. [Sequence Number] uint32 A unique sequence number identifying this specific query. This must be used when acknowledging or responding to the query. This field is only included if the configuration flag Parallel Requests is true. [Client id] string The id of the client sending the request. This field is only included if configuration flag Show client id is true. Identifier uint32 The query identifier as specified in the unabto_queries.xml file. Parameters uint8[] The query request parameters as specified in the unabto_queries.xml file. 5.5 Query response The packet sent out by a Gateway or a Device as a response to a Query Request command. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 11 of 23

12 Commands Source: Gateway, Device Command identifier: Parameters: Field Data type Description [Sequence Number] uint32 The sequence number of the query being responded to. This field is only included if Parallel Requests is true. Status uint32 See section Error! Reference source not found.. Parameters uint8[] The query response parameters as specified in the unabto_queries.xml file. 5.6 Event data push Push data into the Gateways event data queue. For more information about the Event Data channel, please refer to document <TEN004 Nabto Piggyback Message system.docx> Hint: To determine the size of the event data queue on the Gateway send an Event Data Push command with no data. Source: Device Command identifier: Parameters: Field Data type Description Data uint8[] The data to push into the event data queue. 5.7 Event data acknowledge Acknowledge a previous push command informing the Device of the amount of data that was successfully pushed and the amount of free space in the data queue. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 12 of 23

13 Commands Source: Gateway Command identifier: Parameters: Field Data type Description Pushed uint32 The number of bytes successfully pushed into the event data queue on the Gateway. Free uint32 The number of bytes currently free in the event data queue on the Gateway. Size uint32 The total size of the event data queue on the Gateway. 5.8 Stream request A client requests that a stream be opened. Source: Gateway Command identifier: Parameters: Field Data type Description Type uint8 0: multiplexed, 1: non- multiplexed Identifier uint8 The identifier of the stream. Used when performing subsequent stream operations. Only relevant for multiplexed streams. Always 0 when not used. 5.9 Stream response Used by the device to either accept or reject a stream request. Source: Device Command identifier: Parameters: Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 13 of 23

14 Queries Field Data type Description Identifier uint8 The identifier of the stream. Used when performing subsequent stream operations. Only relevant for multiplexed streams. Always 0 when not used. Accepted uint8 0: stream rejected, 1: stream accepted 5.10 Stream data Pushes data through a multiplexed stream. Source: Device, Gateway Command identifier: Parameters: Field Data type Description Identifier uint8 Stream identifier. Data uint8[] The data being pushed through the stream. 6 Queries This section describes the Nabto queries accepted by the Gateway. These queries are termed Gateway Queries, as they are targeting the gateway itself. Each query is described along with its input and output parameters, its query id and the access rights required to execute it. 6.1 Get gateway information Get a list of information key- value pairs from the gateway. The HTML device driver may use these key- value pairs to adapt to different gateway configurations and revisions. A key- value pair is a text string of the form key=value Possible Information keys are listed in the table below. Key Description Example Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 14 of 23

15 Queries hardware_version Hardware version of the gateway. hardware_version=1.1 software_version Version of the gateway application. application_version= acl_size Number of entries in the ACL. acl_size=10 Query: get_gateway_information.json Permissions required: Gateway request Request parameters: Response parameters: 6.2 Access control This group of queries enables configuration of the access control system of the gateway Get users from access control list Get a list of users from the ACL starting at the specified index. Zero or more users will be returned. Multiple queries may be needed to get the full ACL depending on the length of the ACL and the gateway device. Query: access_control_get_users.json Permissions required: Gateway request, Access control Request format: uint16 startingindex. Index of the first user to retrieve. uint16 maximumnumberofusers. Maximum number of users to retrieve in this query. Response format: List: o o raw . The user s address. uint32 permissions. The access permissions granted to this user. uint16 totalnumberofusers. The total number of users in the ACL. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 15 of 23

16 Queries Add user to access control list Add the specified user to the ACL. If the user is already in the ACL, the access permissions will be updated. Query: access_control_add_user.json Permissions required: Gateway request, Access control Request format: raw . The user s address. uint32 permissions. The access permissions granted to this user. Response format: (none) Remove user from access control list Remove the specified user from the ACL. Query: access_contron_remove_user.json Permissions required: Gateway request, Access control Request format: raw . The user s address. Response format: (none) Get allow remote access Get the current state of the allow_remote_access access control flag. Remote access to the gateway and device is only possibly if this flag is set to 1. Query: access_control_get_allow_remote_access.json Permissions required: Gateway request, Access control Request parameters: (none) Response parameters: uint8 value. The current value of the allow_remote_access flag Set allow remote access Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 16 of 23

17 Queries Set the state of the allow_remote_access access control flag. Query: access_control_set_allow_remote_access.json Permissions required: Gateway request, Access control Request parameters: uint8 value. Set to 1 to allow remote access or 0 to disallow remote access. Response parameters: (none) Get default local permissions Get the permissions assigned to local users not in the ACL. Query: access_control_get_default_local_permissions.json Permissions required: Gateway request, Access control Request parameters: (none) Response parameters: uint32 value. The permissions bit mask. See section Access Control for more info Set default local permissions Set the permissions assigned to local users not in the ACL. Query: access_control_set_default_local_permissions.json Permissions required: Gateway request, Access control Request parameters: uint32 value. The permissions bit mask. See section Access Control for more info. Response parameters: (none) Get default remote permissions Get the permissions assigned to remote users not in the ACL. Query: access_control_get_default_local_permissions.json Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 17 of 23

18 Queries Permissions required: Gateway request, Access control Request parameters: (none) Response parameters: uint32 value. The permissions bit mask. See section Access Control for more info Set default remote permissions Set the permissions assigned to remote users not in the ACL. Query: access_control_set_default_local_permissions.json Permissions required: Gateway request, Access control Request parameters: uint32 value. The permissions bit mask. See section Access Control for more info. Response parameters: (none) 6.3 Gateway configuration Get communications port bitrate Get the bitrate currently in use on the communications port. Query: configuration_get_communications_port_bitrate.json Permissions required: Gateway request, Configuration Request parameters: (none) Response parameters: uint32 value. The actual bitrate in bits per second Set communications port bitrate Set the desired bitrate for the communications port. If the specified bitrate is not supported by the device nothing will be changed. The supported values depends on the actual gateway device. Query: configuration_set_communications_port_bitrate.json Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 18 of 23

19 Queries Permissions required: Gateway request, Configuration Request parameters: uint32 value. The desired bitrate in bits per second. Response parameters: (none) Get alternative device id Get the currently assigned alternative device id. Query: configuration_get_alternative_device_id.json Permissions required: Gateway request, Configuration Request parameters: (none) Response parameters: raw value. The current alternative device id Set alternative device id Assign an alternative device id to the device. If a zero- length string is specified the device s default device id will be used. Query: configuration_set_alternative_device_id.json Permissions required: Gateway request, Configuration Request parameters: raw value. The alternative device id to use. Request parameters: (none) Get alternative HTML device driver Get the currently assigned alternative HTML device driver. Query: configuration_get_alternative_html_device_driver.json Permissions required: Gateway request, Configuration Request parameters: (none) Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 19 of 23

20 Queries Response parameters: raw value. The current alternative HTML device driver Set alternative HTML device driver Assign an alternative HTML device driver to the device. If a zero- length string is specified the device s default HTML device driver will be used. Query: configuration_set_alternative_html_device_driver.json Permissions required: Gateway request, Configuration Request parameters: raw value. The alternative HTML device driver to use. Request parameters: (none) 6.4 IO pin control This group of queries allows for client interaction with the physical IO pins of the gateway device. Please refer to the datasheet for the actual gateway device to see which pins are available. IO pins can be configured for one of the following modes: Digital input (power- on default) Digital output Get pin mode Get the current mode of the IO pin. Query: io_get_pin_mode.json Permissions required: Gateway request, IO Request parameters: uint8 pin. Index of the pin. Response parameters: uint8 mode. The current mode of the pin. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 20 of 23

21 Queries Set pin mode Set the mode of the IO pin. Query: io_set_pin_mode.json Permissions required: Gateway request, IO Request parameters: uint8 pin. Index of the pin. uint8 value. The new mode of the pin. Response parameters: (none) Get digital pin value Get the current value of the pin. Only used for pins configured for digital input or digital output. Query: io_get_digital_pin_value.json Permissions required: Gateway request, IO Request parameters: uint8 pin. Index of the pin. Response parameters: uint8 value. The current value of the pin Set digital pin value Set the value written to the pin. Only used for pins configured for digital output. Query: io_set_digital_pin_value.json Permissions required: Gateway request, IO Request parameters: uint8 pin. Index of the pin. uint8 value. The new value of the pin. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 21 of 23

22 Streams Response parameters: (none) 7 Streams A client can open streams to the Device through the Gateway. A stream provides a bidirectional channel between a client and the device appropriate for sending data that is naturally stream oriented (as opposed to the request- response based Device queries). Once a stream has been opened to the gateway, a Service Configuration String (SCS) must be sent. A SCS has the following format: service_identifier [parameters]\n The service responds with a Service Response String (SRS) of the following format: + - [parameters]\n A response starting with a + indicates success. The NSLP server supports the services described below. 7.1 Multiplexed stream Service identifier: muxstream Required rights: Multiplexed stream Multiplexed streams allow multiple clients to establish streams to the application running on the Device. On the device each stream is identified by an integer allowing the 7.2 Non- multiplexed stream Service identifier: nonmuxstream Required rights: Non- multiplexed stream A non- multiplexed stream provides a client with direct access to the Gateway s communications port. Every byte written to the stream will appear unaltered at the communications port and vice versa. The gateway will perform no framing or encoding on the data. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 22 of 23

23 Check list for device application creators When a non- multiplexed stream is requested, no new commands or Device Requests will be accepted. Any pending commands or requests will be completed and a non_multiplexed_stream_opened notification will be sent to the Device. When the notification has been sent, the stream is opened. Once opened, no other streams (of any kind) may be opened. The Gateway also rejects Device Requests. This will continue until the client closes the stream or until the connection to the client is lost. 7.3 Forced non- multiplexed stream Service identifier: forcednonmuxstream Required rights: Forced non- multiplexed stream The forced non- multiplexed stream operates as the non- multiplexed stream described above except it does not wait for commands and requests to complete and it does not send a notification to the Device. Instead, it immediately switches to non- multiplexed stream mode. 8 Check list for device application creators The intention of the section is to give the designer of NSLP protocol clients (devices) a list of things to keep in mind when integrating an NSLP server in a design. 8.1 Maximum packet length The receiving state machine must be able to handle the specified packet length (not including framing and byte stuffing). 8.2 Full duplex communication The NSLP protocol handler on the Device must be able to handle an incoming packet while it itself is sending a packet or waiting for a packet acknowledgement. Nabto Nabto/001/TEN/011 Nabto Serial Link Protocol Page 23 of 23

Nabto Serial Link Protocol

Nabto Serial Link Protocol Nabto Serial Link Protocol Nabto TM Nabto Serial Link Protocol Page 1 of 22 Contents Vocabulary... 4 Introduction... 5 Access Control... 5 Connection type... 5 Access Control List... 5 Protocol details...

More information

Inspirel. YAMI4 Requirements. For YAMI4Industry, v page 1

Inspirel. YAMI4 Requirements. For YAMI4Industry, v page 1 YAMI4 Requirements For YAMI4Industry, v.1.3.1 www.inspirel.com info@inspirel.com page 1 Table of Contents Document scope...3 Architectural elements...3 Serializer...3 Socket...3 Input buffer...4 Output

More information

UDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data

UDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data ELEX 4550 : Wide Area Networks 2015 Winter Session UDP and TCP is lecture describes the two most common transport-layer protocols used by IP networks: the User Datagram Protocol (UDP) and the Transmission

More information

RM0327 Reference manual

RM0327 Reference manual Reference manual Multi-Target Trace API version 1.0 Overview Multi-Target Trace (MTT) is an application instrumentation library that provides a consistent way to embed instrumentation into a software application,

More information

SB72EX User's Manual

SB72EX User's Manual etburner SB72EX User's Manual Revision: 1.8 October 8, 2009 SB72EX User's Manual, 350030-001 Table of Contents Table of Contents...2 Overview of the SB72EX Dual-port Serial to Ethernet Device... 3 Overview

More information

Transport Protocols. Raj Jain. Washington University in St. Louis

Transport Protocols. Raj Jain. Washington University in St. Louis Transport Protocols Raj Jain Washington University Saint Louis, MO 63131 Jain@cse.wustl.edu These slides are available on-line at: http://www.cse.wustl.edu/~jain/cse473-05/ 16-1 Overview q TCP q Key features

More information

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst EITF25 Internet Techniques and Applications L7: Internet Stefan Höst What is Internet? Internet consists of a number of networks that exchange data according to traffic agreements. All networks in Internet

More information

Homework 4 assignment for ECE374 Posted: 04/06/15 Due: 04/13/15

Homework 4 assignment for ECE374 Posted: 04/06/15 Due: 04/13/15 ECE374: Homework 4 1 Homework 4 assignment for ECE374 Posted: 04/06/15 Due: 04/13/15 Note: In all written assignments, please show as much of your work as you can. Even if you get a wrong answer, you can

More information

Network Processor Interface User s Guide

Network Processor Interface User s Guide Network Processor Interface User s Guide Texas Instruments, Inc. San Diego, California USA Copyright 2015-2016 Texas Instruments, Inc. All rights reserved. TABLE OF CONTENTS 1 OVERVIEW... 3 1.1 INTRODUCTION...

More information

CCNA 1 Chapter 7 v5.0 Exam Answers 2013

CCNA 1 Chapter 7 v5.0 Exam Answers 2013 CCNA 1 Chapter 7 v5.0 Exam Answers 2013 1 A PC is downloading a large file from a server. The TCP window is 1000 bytes. The server is sending the file using 100-byte segments. How many segments will the

More information

Mumble Protocol. Release alpha

Mumble Protocol. Release alpha Mumble Protocol Release 1.2.5-alpha Nov 06, 2017 Contents 1 Contents 1 1.1 Introduction............................................... 1 1.2 Overview................................................. 1

More information

ESP8266 Application Note Firmware Download Protocol

ESP8266 Application Note Firmware Download Protocol ESP8266 Application Note Firmware Download Protocol Version 1.0 Copyright 2016 About This Guide This document introduces ESP8266 firmware download protocol with a structure as follows. Chapter Title Subject

More information

MW100 Setting for Data Communications via Modbus Protocol. Connect to Ethernet. Enter Ethernet settings. Enter Server Settings

MW100 Setting for Data Communications via Modbus Protocol. Connect to Ethernet. Enter Ethernet settings. Enter Server Settings User s Manual Setting for Data Communications via Modbus Protocol Overview This is an explanation of the procedure for entering settings for Modbus communications with the DAQMASTER. This manual descries

More information

HTTP Authentication API

HTTP Authentication API HTTP Authentication API Note: Both GET (URL format) and POST http requests are supported. Note that POST is considered better security as URL data can be cached in the browser. HTTP URL Format http(s)://your_securenvoy_server/secserver?flag=desktop&version=2.0&status=auth&userid=(my_userid)&passcode=(6

More information

[MC-DPL4R]: DirectPlay 4 Protocol: Reliable

[MC-DPL4R]: DirectPlay 4 Protocol: Reliable [MC-DPL4R]: DirectPlay 4 Protocol: Reliable Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for

More information

ECE 435 Network Engineering Lecture 15

ECE 435 Network Engineering Lecture 15 ECE 435 Network Engineering Lecture 15 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 26 October 2016 Announcements HW#5 due HW#6 posted Broadcasts on the MBONE 1 The Transport

More information

Sequence Number. Acknowledgment Number. Data

Sequence Number. Acknowledgment Number. Data CS 455 TCP, Page 1 Transport Layer, Part II Transmission Control Protocol These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make

More information

[MS-RDPEMC]: Remote Desktop Protocol: Multiparty Virtual Channel Extension

[MS-RDPEMC]: Remote Desktop Protocol: Multiparty Virtual Channel Extension [MS-RDPEMC]: Remote Desktop Protocol: Multiparty Virtual Channel Extension Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications

More information

Transport protocols Introduction

Transport protocols Introduction Transport protocols 12.1 Introduction All protocol suites have one or more transport protocols to mask the corresponding application protocols from the service provided by the different types of network

More information

IP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia

IP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia IP - The Internet Protocol Based on the slides of Dr. Jorg Liebeherr, University of Virginia Orientation IP (Internet Protocol) is a Network Layer Protocol. IP: The waist of the hourglass IP is the waist

More information

CS 4453 Computer Networks Winter

CS 4453 Computer Networks Winter CS 4453 Computer Networks Chapter 2 OSI Network Model 2015 Winter OSI model defines 7 layers Figure 1: OSI model Computer Networks R. Wei 2 The seven layers are as follows: Application Presentation Session

More information

[MS-RDPECLIP]: Remote Desktop Protocol: Clipboard Virtual Channel Extension

[MS-RDPECLIP]: Remote Desktop Protocol: Clipboard Virtual Channel Extension [MS-RDPECLIP]: Remote Desktop Protocol: Clipboard Virtual Channel Extension Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications

More information

[MC-SMP]: Session Multiplex Protocol. Intellectual Property Rights Notice for Open Specifications Documentation

[MC-SMP]: Session Multiplex Protocol. Intellectual Property Rights Notice for Open Specifications Documentation [MC-SMP]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation ( this documentation ) for protocols,

More information

Transport Layer. Gursharan Singh Tatla. Upendra Sharma. 1

Transport Layer. Gursharan Singh Tatla.   Upendra Sharma. 1 Transport Layer Gursharan Singh Tatla mailme@gursharansingh.in Upendra Sharma 1 Introduction The transport layer is the fourth layer from the bottom in the OSI reference model. It is responsible for message

More information

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering

More information

Internetwork Protocols

Internetwork Protocols Internetwork Protocols Background to IP IP, and related protocols Internetworking Terms (1) Communications Network Facility that provides data transfer service An internet Collection of communications

More information

EE 610 Part 2: Encapsulation and network utilities

EE 610 Part 2: Encapsulation and network utilities EE 610 Part 2: Encapsulation and network utilities Objective: After this experiment, the students should be able to: i. Understand the format of standard frames and packet headers. Overview: The Open Systems

More information

CS 43: Computer Networks. 15: Transport Layer & UDP October 5, 2018

CS 43: Computer Networks. 15: Transport Layer & UDP October 5, 2018 CS 43: Computer Networks 15: Layer & UDP October 5, 2018 Reading Quiz Lecture 15 - Slide 2 Layer Moving down a layer. Current perspective: lication is the boss Usually executing within the OS kernel. The

More information

Transport Layer. The transport layer is responsible for the delivery of a message from one process to another. RSManiaol

Transport Layer. The transport layer is responsible for the delivery of a message from one process to another. RSManiaol Transport Layer Transport Layer The transport layer is responsible for the delivery of a message from one process to another Types of Data Deliveries Client/Server Paradigm An application program on the

More information

Layer 2 functionality bridging and switching

Layer 2 functionality bridging and switching Layer 2 functionality bridging and switching BSAD 141 Dave Novak Sources: Network+ Guide to Networks, Dean 2013 Overview Layer 2 functionality Error detection Bridges Broadcast and collision domains How

More information

KMIP 64-bit Binary Alignment Proposal

KMIP 64-bit Binary Alignment Proposal KMIP 64-bit Binary Alignment Proposal To: OASIS KMIP Technical Committee From: Matt Ball, Sun Microsystems, Inc. Date: May 6, 2009 Version: 2 Purpose: To propose a change to the binary encoding such that

More information

Omni Flow Computer Master Driver v1.x Omni Flow Computer Master Modicon Compatible Driver 1.x

Omni Flow Computer Master Driver v1.x Omni Flow Computer Master Modicon Compatible Driver 1.x Omni Flow Computer Master Driver v1.x Omni Flow Computer Master Modicon Compatible Driver 1.x Information Sheet for Crimson v3.0+ Compatible Devices Omni Flow Computer devices equipped with Ethernet or

More information

CS 4390 Computer Networks. Transport Services and Protocols

CS 4390 Computer Networks. Transport Services and Protocols CS 4390 Computer Networks UT D data Session 07 Transport Layer Overview and UDP Adapted from Computer Networking a Top-Down Approach 1996-2012 by J.F Kurose and K.W. Ross, All Rights Reserved Transport

More information

Annotation Universal Metadata Set. 1 Scope. 2 References. 3 Introduction. Motion Imagery Standards Board Recommended Practice MISB RP 0602.

Annotation Universal Metadata Set. 1 Scope. 2 References. 3 Introduction. Motion Imagery Standards Board Recommended Practice MISB RP 0602. Motion Imagery Standards Board Recommended Practice Annotation Universal Metadata Set MISB RP 0602.1 13 June 2007 1 Scope This Recommended Practice documents the basic SMPTE KLV metadata sets used to encode

More information

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections Application / Transport Interface Application requests service from transport layer Transport Layer Application Layer Prepare Transport service requirements Data for transport Local endpoint node address

More information

Multimedia in the Internet

Multimedia in the Internet Protocols for multimedia in the Internet Andrea Bianco Telecommunication Network Group firstname.lastname@polito.it http://www.telematica.polito.it/ > 4 4 3 < 2 Applications and protocol stack DNS Telnet

More information

PLENA matrix API Table of contents en 3

PLENA matrix API Table of contents en 3 PLENA matrix API en PLENA matrix API Table of contents en 3 Table of contents 1 PLENA Matrix Network API 4 1.1 Protocol Information 4 1.2 Network Discovery 5 1.3 Connection Initiation 5 1.4 Parameter

More information

Avro Specification

Avro Specification Table of contents 1 Introduction...2 2 Schema Declaration... 2 2.1 Primitive Types... 2 2.2 Complex Types...2 2.3 Names... 5 2.4 Aliases... 6 3 Data Serialization...6 3.1 Encodings... 7 3.2 Binary Encoding...7

More information

Avro Specification

Avro Specification Table of contents 1 Introduction...2 2 Schema Declaration... 2 2.1 Primitive Types... 2 2.2 Complex Types...2 2.3 Names... 5 3 Data Serialization...6 3.1 Encodings... 6 3.2 Binary Encoding...6 3.3 JSON

More information

Unit 2.

Unit 2. Unit 2 Unit 2 Topics Covered: 1. PROCESS-TO-PROCESS DELIVERY 1. Client-Server 2. Addressing 2. IANA Ranges 3. Socket Addresses 4. Multiplexing and Demultiplexing 5. Connectionless Versus Connection-Oriented

More information

Chapter 3. The Data Link Layer. Wesam A. Hatamleh

Chapter 3. The Data Link Layer. Wesam A. Hatamleh Chapter 3 The Data Link Layer The Data Link Layer Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols The Data

More information

Lecture 2: Links and Signaling

Lecture 2: Links and Signaling Lecture 2: Links and Signaling CSE 123: Computer Networks Alex C. Snoeren DISCUSSION @7pm Tomorrow Our Problem Communications is complicated Modulation and encoding bits Splitting sequences of bits into

More information

Computer Science 461 Midterm Exam March 14, :00-10:50am

Computer Science 461 Midterm Exam March 14, :00-10:50am NAME: Login name: Computer Science 461 Midterm Exam March 14, 2012 10:00-10:50am This test has seven (7) questions, each worth ten points. Put your name on every page, and write out and sign the Honor

More information

Transport Protocol (IEX-TP)

Transport Protocol (IEX-TP) Transport Protocol (IEX-TP) Please contact IEX Market Operations at 646.568.2330 or marketops@iextrading.com, or your IEX onboarding contact with any questions. Version: 1.1 Updated: December 22, 2014

More information

Flow control: Ensuring the source sending frames does not overflow the receiver

Flow control: Ensuring the source sending frames does not overflow the receiver Layer 2 Technologies Layer 2: final level of encapsulation of data before transmission over a physical link responsible for reliable transfer of frames between hosts, hop by hop, i.e. on a per link basis

More information

Proposed PLDM support over NC-SI RBT Commands (Work-In-Progress)

Proposed PLDM support over NC-SI RBT Commands (Work-In-Progress) Proposed PLDM support over NC-SI RBT Commands (Work-In-Progress) This document proposes new commands and AEN to be added into NC-SI standard, in order to include full support of PLDM using NC-SI commands

More information

dysect DICOM Conformance Statement dysect DICOM Conformance Statement

dysect DICOM Conformance Statement dysect DICOM Conformance Statement dysect DICOM Conformance Statement 1 dysect DICOM Conformance Statement (041-00-0007 H) dysect Conformance Statement.doc DeJarnette Research Systems, Inc. 401 Washington Avenue, Suite 1010 Towson, Maryland

More information

Chapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control

Chapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control Chapter 6 What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control OSI Model Hybrid Model Software outside the operating system Software inside

More information

EGW1-IA3-MB User s Manual

EGW1-IA3-MB User s Manual www.exemys.com Rev. 0 1 Products are in constant evolution to satisfy our customer needs. For that reason, the specifications and capabilities are subject to change without prior notice. Updated information

More information

An 8051 Based Web Server

An 8051 Based Web Server An 8051 Based Web Server Project by Mason Kidd Submitted to Dr. Donald Schertz EE 452 Senior Laboratory II May 14 th, 2002 Table of Contents Page 1. Abstract 1 2. Functional Description 2 3. Block Diagram

More information

Data Link Layer (1) Networked Systems 3 Lecture 6

Data Link Layer (1) Networked Systems 3 Lecture 6 Data Link Layer (1) Networked Systems 3 Lecture 6 Purpose of Data Link Layer Arbitrate access to the physical layer Structure and frame the raw bits Provide flow control Detect and correct bit errors Perform

More information

(Refer Slide Time: 1:09)

(Refer Slide Time: 1:09) Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecturer # 30 UDP and Client Server Good day, today we will start our discussion

More information

Question 7: What are Asynchronous links?

Question 7: What are Asynchronous links? Question 1:.What is three types of LAN traffic? Unicasts - intended for one host. Broadcasts - intended for everyone. Multicasts - intended for an only a subset or group within an entire network. Question2:

More information

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science Advanced Computer Networks Rab Nawaz Jadoon Department of Computer Science DCS COMSATS Institute of Information Technology Assistant Professor COMSATS University, Lahore Pakistan Advanced Computer Networks

More information

Attestation Service for Intel Software Guard Extensions (Intel SGX): API Documentation. Revision: 3.0

Attestation Service for Intel Software Guard Extensions (Intel SGX): API Documentation. Revision: 3.0 Attestation Service for Intel Software Guard Extensions (Intel SGX): API Documentation Revision: 3.0 1 1 Abbreviations... 4 2 Attestation Service for Intel SGX... 5 Supported environments... 5 Authentication...

More information

Configuring MLD. Overview. MLD versions. How MLDv1 operates. MLD querier election

Configuring MLD. Overview. MLD versions. How MLDv1 operates. MLD querier election Contents Configuring MLD 1 Overview 1 MLD versions 1 How MLDv1 operates 1 How MLDv2 operates 3 MLD message types 4 MLD SSM mapping 7 MLD proxying 8 Protocols and standards 9 MLD configuration task list

More information

THE JOINT ARCHITECTURE FOR UNMANNED SYSTEMS

THE JOINT ARCHITECTURE FOR UNMANNED SYSTEMS THE JOINT ARCHITECTURE FOR UNMANNED SYSTEMS Reference Architecture Specification Volume II, Part 2 Message Definition Version 3.2 August 13, 2004 TABLE OF CONTENTS Title Page 1 INTRODUCTION 1 2 JAUS STANDARDS

More information

Overview of TCP/IP Overview of TCP/IP protocol: TCP/IP architectural models TCP protocol layers.

Overview of TCP/IP Overview of TCP/IP protocol: TCP/IP architectural models TCP protocol layers. Overview of TCP/IP 3 Overview of TCP/IP protocol: TCP/IP architectural models TCP protocol layers. 4 2 5 6 3 7 8 4 9 10 5 11 12 6 13 14 7 15 16 8 17 18 9 19 20 10 21 Why TCP/IP? Packet based Provides decentralized

More information

ip dhcp-client network-discovery through ip nat sip-sbc

ip dhcp-client network-discovery through ip nat sip-sbc ip dhcp-client network-discovery through ip nat sip-sbc ip dhcp-client network-discovery, page 3 ip dhcp-client update dns, page 5 ip dhcp drop-inform, page 8 ip dhcp-relay information option server-override,

More information

05 Transmission Control Protocol (TCP)

05 Transmission Control Protocol (TCP) SE 4C03 Winter 2003 05 Transmission Control Protocol (TCP) Instructor: W. M. Farmer Revised: 06 February 2003 1 Interprocess Communication Problem: How can a process on one host access a service provided

More information

CC231 Introduction to Networks Dr. Ayman A. Abdel-Hamid. Internet Protocol Suite

CC231 Introduction to Networks Dr. Ayman A. Abdel-Hamid. Internet Protocol Suite CC231 Introduction to Networks Dr. Ayman A. Abdel-Hamid College of Computing and Information Technology Arab bacademy for Science &T Technology and Maritime Transport Internet Protocol Suite IP Suite Dr.

More information

Software Design Specification

Software Design Specification Software Design Specification Z-Wave Management Command Class Specification Document No.: SDS13782 Version: Description: The document describes the Z-Wave Command Classes and associated Commands used by

More information

Internet Layers. Physical Layer. Application. Application. Transport. Transport. Network. Network. Network. Network. Link. Link. Link.

Internet Layers. Physical Layer. Application. Application. Transport. Transport. Network. Network. Network. Network. Link. Link. Link. Internet Layers Application Application Transport Transport Network Network Network Network Link Link Link Link Ethernet Fiber Optics Physical Layer Wi-Fi ARP requests and responses IP: 192.168.1.1 MAC:

More information

Request for Comments: 5109 December 2007 Obsoletes: 2733, 3009 Category: Standards Track. RTP Payload Format for Generic Forward Error Correction

Request for Comments: 5109 December 2007 Obsoletes: 2733, 3009 Category: Standards Track. RTP Payload Format for Generic Forward Error Correction Network Working Group A. Li, Ed. Request for Comments: 5109 December 2007 Obsoletes: 2733, 3009 Category: Standards Track RTP Payload Format for Generic Forward Error Correction Status of This Memo This

More information

a. (4pts) What general information is contained in a LSR-PDU update that A might send?

a. (4pts) What general information is contained in a LSR-PDU update that A might send? B1: Networks (25 points) Link State Routing (LSR). (Hint: flooding and Dijkstra s Algorithm). Assume Router A has physical links to Routers W, X, Y, Z. a. (4pts) What general information is contained in

More information

TCP/IP Protocol Suite 1

TCP/IP Protocol Suite 1 TCP/IP Protocol Suite 1 Stream Control Transmission Protocol (SCTP) TCP/IP Protocol Suite 2 OBJECTIVES: To introduce SCTP as a new transport-layer protocol. To discuss SCTP services and compare them with

More information

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005 Transport Layer For a connection on a host (single IP address), there exist many entry points through which there may be many-to-many connections. These are called ports. A port is a 16-bit number used

More information

4. The transport layer

4. The transport layer 4.1 The port number One of the most important information contained in the header of a segment are the destination and the source port numbers. The port numbers are necessary to identify the application

More information

Thrift specification - Remote Procedure Call

Thrift specification - Remote Procedure Call Erik van Oosten Revision History Revision 1.0 2016-09-27 EVO Initial version v1.1, 2016-10-05: Corrected integer type names. Small changes to section headers. Table of Contents 1.

More information

These selected protocol definitions are extremely helpful in learning the

These selected protocol definitions are extremely helpful in learning the Appendix B Protocol Definitions These selected protocol definitions are extremely helpful in learning the finer points of network protocols. This information is exposed under Network Monitor s Display

More information

UNIT IV -- TRANSPORT LAYER

UNIT IV -- TRANSPORT LAYER UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission

More information

An SCTP-Protocol Data Unit with several chunks

An SCTP-Protocol Data Unit with several chunks SCTP for Beginners Section 2 SCTP Packets he protocol data units (PDU) of SCTP are called SCTP packets. If SCTP runs over IP (as described in RFC2960 ), an SCTP packet forms the payload of an IP packet.

More information

µtasker Document µtasker Multicasting and Internet Group Management Protocol (IGMP)

µtasker Document µtasker Multicasting and Internet Group Management Protocol (IGMP) Embedding it better... µtasker Document µtasker Multicasting and Internet Group Management Protocol (IGMP) utasker_igmp.doc/0.01 Copyright 2014 M.J.Butcher Consulting Table of Contents 1. Introduction...3

More information

Chapter 3. The Data Link Layer

Chapter 3. The Data Link Layer Chapter 3 The Data Link Layer 1 Data Link Layer Algorithms for achieving reliable, efficient communication between two adjacent machines. Adjacent means two machines are physically connected by a communication

More information

OSI Layers (Open System Interconnection)

OSI Layers (Open System Interconnection) OSI Layers (Open System Interconnection) What is a Network? A network refers to two or more connected computers that can share resources such as data, a printer, an Internet connection, applications, or

More information

Objectives. Chapter 10. Upon completion you will be able to:

Objectives. Chapter 10. Upon completion you will be able to: Chapter 10 Figure 10.1 Position of IGMP in the network layer Objectives Upon completion you will be able to: Know the purpose of IGMP Know the types of IGMP messages Understand how a member joins a group

More information

[MS-WMHTTP]: Windows Media HTTP Push Distribution Protocol. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-WMHTTP]: Windows Media HTTP Push Distribution Protocol. Intellectual Property Rights Notice for Open Specifications Documentation [MS-WMHTTP]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation ( this documentation ) for protocols,

More information

[MS-NFPS]: Near Field Proximity: Sharing Protocol

[MS-NFPS]: Near Field Proximity: Sharing Protocol [MS-NFPS]: Near Field Proximity: Sharing Protocol Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation

More information

Network Model. Why a Layered Model? All People Seem To Need Data Processing

Network Model. Why a Layered Model? All People Seem To Need Data Processing Network Model Why a Layered Model? All People Seem To Need Data Processing Layers with Functions Packet Propagation Each router provides its services to support upper-layer functions. Headers (Encapsulation

More information

CS 261 Fall Mike Lam, Professor Integer Encodings

CS 261 Fall Mike Lam, Professor   Integer Encodings CS 261 Fall 2018 Mike Lam, Professor https://xkcd.com/571/ Integer Encodings Integers Topics C integer data types Unsigned encoding Signed encodings Conversions Integer data types in C99 1 byte 2 bytes

More information

SSE232-LE Serial Server- User s Manual

SSE232-LE Serial Server- User s Manual www.exemys.com Rev.6 1 Products are in constant evolution to satisfy our customer needs. For that reason, the specifications and capabilities are subject to change without prior notice. Updated information

More information

Japannext PTS GLIMPSE Market Data Specification for Equities

Japannext PTS GLIMPSE Market Data Specification for Equities Japannext PTS GLIMPSE Market Data Specification for Equities Version 1.2 Updated 26 October 2017 Table of Contents Introduction... 3 Overview... 3 Data Types... 3 Service Usage... 3 Outbound Sequenced

More information

Configuring the Management Interface and Security

Configuring the Management Interface and Security CHAPTER 5 Configuring the Management Interface and Security Revised: February 15, 2011, Introduction This module describes how to configure the physical management interfaces (ports) as well as the various

More information

Request for Comments: 938 February 1985

Request for Comments: 938 February 1985 Network Working Group Request for Comments: 938 Trudy Miller ACC February 1985 Functional and Interface Specification STATUS OF THIS MEMO This RFC is being distributed to members of the DARPA research

More information

ECE 650 Systems Programming & Engineering. Spring 2018

ECE 650 Systems Programming & Engineering. Spring 2018 ECE 650 Systems Programming & Engineering Spring 2018 Networking Transport Layer Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) TCP/IP Model 2 Transport Layer Problem solved:

More information

Networking: Network layer

Networking: Network layer control Networking: Network layer Comp Sci 3600 Security Outline control 1 2 control 3 4 5 Network layer control Outline control 1 2 control 3 4 5 Network layer purpose: control Role of the network layer

More information

ECE 428 Internet Protocols (Network Layer: Layer 3)

ECE 428 Internet Protocols (Network Layer: Layer 3) ECE 428 Internet Protocols (Network Layer: Layer 3) 1 Done so far MAC protocols (with PHYsical layer) Transport bits from one node to another. Key element: Determine WHEN to transmit DLC protocol (running

More information

Announcements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades

Announcements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades Announcements 15-441 Computer Networking Lecture 16 Transport Protocols Mid-semester grades Based on project1 + midterm + HW1 + HW2 42.5% of class If you got a D+,D, D- or F! must meet with Dave or me

More information

Chapter 24. Transport-Layer Protocols

Chapter 24. Transport-Layer Protocols Chapter 24. Transport-Layer Protocols 23.1 Introduction 23.2 User Datagram Protocol 23.3 Transmission Control Protocol 23.4 SCTP Computer Networks 24-1 Position of Transport-Layer Protocols UDP is an unreliable

More information

DLR - Device Level Ring Protocol User Manual port GmbH, Documentation Revision: 1.1 / DLR Version: 1.1.0

DLR - Device Level Ring Protocol User Manual port GmbH, Documentation Revision: 1.1 / DLR Version: 1.1.0 DLR - Device Level Ring Protocol User Manual port GmbH, 2016 Documentation Revision: 1.1 / DLR Version: 1.1.0 Contents 1 General Information 2 1.1 Changelog..................................... 2 1.2 Authors......................................

More information

Introduction to Networks and the Internet

Introduction to Networks and the Internet Introduction to Networks and the Internet CMPE 80N Announcements Project 2. Reference page. Library presentation. Internet History video. Spring 2003 Week 7 1 2 Today Internetworking (cont d). Fragmentation.

More information

Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005

Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005 Name: SID: Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005 There are 10 questions in total. Please write your SID

More information

Lecture 8: February 19

Lecture 8: February 19 CMPSCI 677 Operating Systems Spring 2013 Lecture 8: February 19 Lecturer: Prashant Shenoy Scribe: Siddharth Gupta 8.1 Server Architecture Design of the server architecture is important for efficient and

More information

Data Link layer (CN chap 3.1, 3.4, 3.6)

Data Link layer (CN chap 3.1, 3.4, 3.6) Data Link layer (CN chap 3.1, 3.4, 3.6) The OSI model an old friend... Application Presentation Session Transport Network Data link Physical F.eks. ftp, mail, http,... handles data structures and conversion

More information

CSCI-1680 Link Layer I Rodrigo Fonseca

CSCI-1680 Link Layer I Rodrigo Fonseca CSCI-1680 Link Layer I Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Last time Physical layer: encoding, modulation Today Link layer framing Getting frames

More information

Nail. A Practical Tool for Parsing and Generating Data Formats. Julian Bangert, Nickolai Zeldovich MIT CSAIL. OSDI 14 October 2014

Nail. A Practical Tool for Parsing and Generating Data Formats. Julian Bangert, Nickolai Zeldovich MIT CSAIL. OSDI 14 October 2014 Nail A Practical Tool for Parsing and Generating Data Formats Julian Bangert, Nickolai Zeldovich MIT CSAIL OSDI 14 October 2014 1 / 12 Motivation Parsing Vulnerabilities hand-crafted input parsing and

More information

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING UNIT-2 2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS 2.2.1 Pure ALOHA 2.2.2 Slotted ALOHA 2.2.3 Carrier Sense Multiple Access 2.2.4 CSMA with Collision Detection 2.2.5 Collision Free Protocols 2.2.5.1

More information

Network.... communication system for connecting end- systems. End-systems a.k.a. hosts PCs, workstations dedicated computers network components

Network.... communication system for connecting end- systems. End-systems a.k.a. hosts PCs, workstations dedicated computers network components Networking 1 Network... communication system for connecting end- systems End-systems a.k.a. hosts PCs, workstations dedicated computers network components 2 Multiaccess vs.. Point-to-point Multiaccess

More information

Networking interview questions

Networking interview questions Networking interview questions What is LAN? LAN is a computer network that spans a relatively small area. Most LANs are confined to a single building or group of buildings. However, one LAN can be connected

More information

Lecture 2 Communication services The Trasport Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Lecture 2 Communication services The Trasport Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Lecture 2 Communication services The Trasport Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it The structure edge: applications and hosts core: routers of s access s, media:

More information