TechnoByte, The Students Forum
Networking

Explain TCP/IP laying in detail with near sketch.

Write short notes on UDP.

User Datagram Protocol (UDP) is a communications protocol that is primarily used to establish low-latency and loss-tolerating connections between applications on the internet. UDP speeds up transmissions by enabling the transfer of data before an agreement is provided by the receiving party.
For real-time services like computer gaming, voice or video communication, live conferences; we need UDP. Since high performance is needed, UDP permits packets to be dropped instead of processing delayed packets. There is no error checking in UDP, so it also saves bandwidth.


Write short notes on TELNET.

Telnet is a network protocol used to virtually access a computer and to provide a two-way, collaborative and text-based communication channel between two machines. It follows a user command Transmission Control Protocol/Internet Protocol (TCP/IP) networking protocol for creating remote sessions. For this purpose, a client-server connection is established by default via the TCP protocol and the TCP port 23, where the remotely controlled device acts as a server and waits for commands.


Discuss in details about TCP socket.

TCP socket is a connection-oriented socket that uses the Transmission Control Protocol (TCP). It requires three packets to set up a connection: the SYN packet, the SYN-ACK packet, and the ACK packet. TCP socket is defined by the IP address of the machine and the port it uses. The TCP socket guarantees that all data is received and acknowledged.

Advantage of TCP Sockets
Is reliable: packets dropped in the network are detected and retransmitted by the sender.
Has in-order data delivery: data is read by our application in the order it was written by the sender.

For example, let us send an HTTP request from our local client at 120.1.1.1 to the website at 189.1.1.1. The server for that website will use well-known port number 80, so its socket is 189.1.1.1:80, let us assume that we have been alloted ephemeral port number 3022 for the web browser, so the client socket is 120.1.1.1:3022. The overall connection between these devices can now be described using this socket pair: (189.1.1.1:80, 120.1.1.1:3022).


Discuss in details about UDP socket.

UDP socket routines enable simple IP communication using the user datagram protocol (UDP).

The User Datagram Protocol (UDP) runs on top of the Internet Protocol (IP) and was developed for applications that do not require reliability, acknowledgment, or flow control features at the transport layer. This simple protocol provides transport layer addressing in the form of UDP ports and an optional checksum capability.

UDP is a very simple protocol. Messages, so called datagrams, are sent to other hosts on an IP network without the need to set up special transmission channels or data paths beforehand. The UDP socket only needs to be opened for communication. It listens for incoming messages and sends outgoing messages on request.


Explain with function call sequence in TCP client/server communication wlth a neat diagram.


Discuss different type of Routing sockets with examples.

A routing socket is a special type of socket that is not specific to any particular network protocol, but allows privileged user processes to write information into the kernel. User processes use this type of socket to add and remove information from the routing table.

Example 1) In BSD systems the routing code is within the kernel, the decisions on the routing table entries are controlled from outside, usually from a userspace routing daemon. The routing socket (simply a socket of type PF_ROUTE) enables the communication between the user and kernel portions.

Example 2) For simpler systems, such as normal desktop machines with essentially the default gateway address being the only routing information, the routing socket is used to set the gateway address. Smart routers will use this interface for programs such as routed.


Write notes on Row Sockets.

Raw sockets provide access to ICMP (Internet Control Message Protocol). These sockets are normally datagram oriented, although their exact characteristics are dependent on the interface provided by the protocol. Raw sockets are not for most applications. They are provided to support developing new communication protocols or for access to more esoteric facilities of an existing protocol. Only superuser processes can use raw sockets.

A raw socket is a type of socket that allows access to the underlying transport provider. To use raw sockets, an application needs to have detailed information on the underlying protocol being used.

The raw socket interface provides direct access to lower layer protocols, such as the Internet Protocol (IP) and Internet Control Message Protocol (ICMP or ICMPv6). Because the raw socket isolates us from the communication functions of the different protocol layers, socket interfaces are largely independent of the underlying network.

Uses of raw socket:
We can use raw sockets to test new protocol implementations.
We can extend the socket interface
We can define new socket types to provide additional services.


Write notes on ICMPV6.

The Internet Control Message Protocol Version 6 (ICMPv6) is a new version of the ICM protocol that forms Blue cable wire an integral part of the Internet Protocol version 6 (IPv6) architecture. ICMPv6 messages are transported within an IPv6 packet that may include IPv6 extension headers.

ICMPv6 offers a comprehensive solution by offering the different functions earlier subdivided among the different protocols such as ICMP, ARP (Address Resolution blue cable wireProtocol), and IGMP (Internet Group Membership Protocol version 3).


Write notes on multicasting.

Multicasting is a method of group communication where the sender sends data to multiple receivers or nodes present in the network simultaneously. Multicasting is a type of one-to-many and many-to-many communication as it allows sender or senders to send data packets to multiple receivers at once across LANs or WANs.


Write notes on unix domain protocol.

The Unix domain protocols are not an actual protocol suite, but a way of performing client/server communication on a single host using the same API that is used for clients and servers on different hosts. The Unix domain protocols are an alternative to the interprocess communication (IPC) methods, when the client and server are on the same host.

Two types of sockets are provided in the Unix domain: stream sockets (similar to TCP) and datagram sockets (similar to UDP). Unix domain sockets are used for three reasons:

On Berkeley-derived implementations, Unix domain sockets are often twice as fast as a TCP socket when both peers are on the same host Unix domain sockets are used when passing descriptors between processes on the same host.

Newer implementations of Unix domain sockets provide the client's credentials (user ID and group IDs) to the server, which can provide additional security checking.


Write notes on Broadcasting.

In computer networking, telecommunication and information theory, broadcasting is a method of transferring a message to all recipients simultaneously. Broadcast delivers a message to all nodes in the network using a one-to-all association; a single datagram (or packet) from one sender is routed to all of the possibly multiple endpoints associated with the broadcast address. The network automatically replicates datagrams as needed to reach all the recipients within the scope of the broadcast, which is generally an entire network subnet.


Compare the PV4, IPV6, Unix domain and data link sockets address structure. State your assumption.

Explain how a TCP echo server using thread created and give also their advantages.

Compare IPv4 and IPv6.

Discuss in deatils about inter-process communication with an example.

Write notes on FIFOX.


Write notes on (Remote Procedure Calls) RPC.

Remote Procedure Call is a software communication protocol that one program can use to request a service from a program located in another computer on a network without having to understand the network's details. RPC is used to call other processes on the remote systems like a local system. A procedure call is also sometimes known as a function call or a subroutine call.

RPC uses the client-server model. The requesting program is a client, and the service-providing program is the server. Like a local procedure call, an RPC is a synchronous operation requiring the requesting program to be suspended until the results of the remote procedure are returned. However, the use of lightweight processes or threads that share the same address space enables multiple RPCs to be performed concurrently.


Discuss in details about synchronization with an example.

Write notes on POSIX IPC.


What is meant by Socket ? Describe different types of TCP sockets.

A socket is one endpoint of a two way communication link between two programs running on the network. The socket mechanism provides a means of inter-process communication (IPC) by establishing named contact points between which the communication take place.

The socket provides bidirectional FIFO Communication facility over the network. A socket connecting to the network is created at each end of the communication. Each socket has a specific address. This address is composed of an IP address and a port number.

Socket are generally employed in client server applications. The server creates a socket, attaches it to a network port addresses then waits for the client to contact it. The client creates a socket and then attempts to connect to the server socket. When the connection is established, transfer of data takes place.

Types of Sockets:
There are two types of Sockets: the datagram socket and the stream socket.

Datagram Socket:
Datagram sockets allow processes to use UDP to communicate. This is a type of network which has connection less point for sending and receiving packets. It is similar to mailbox. The letters (data) posted into the box are collected and delivered (transmitted) to a letterbox (receiving socket).

Stream Socket:
Stream sockets allow processes to communicate using TCP. In Computer operating system, a stream socket is type of interprocess communications socket or network socket which provides a connection-oriented, sequenced, and unique flow of data without record boundaries with well defined mechanisms for creating and destroying connections and for detecting errors. It is similar to phone. A connection is established between the phones (two ends) and a conversation (transfer of data) takes place.


Write short notes on TCP Vs. UDP

Draw and explain the detail architecture of TCP/IP reference model.

Write notes on UDP.

Differentiate between TCP and UDP. Describe different types of UDP sockets.

Describe the concept of I/O multiplexing with an example.

Draw and explain the detail architecture of UDP protocol.

Explain one example of TCP client server.

Describe different types of UNIX domain protocols.

Differentiate between Broadcasting and Multicasting. Describe different Multicasting techniques with examples.

Descrlbe the concept of broadcasting with an example.

Write short notes on Signal driven I/O.


Write short notes on Threads.

A thread is a path of execution within a process. A process can contain multiple threads. At any given time during the runtime of the thread, there is a single point of execution. However, a thread itself is not a program; a thread cannot run on its own. Rather, it runs within a program.

A thread is also called a lightweight process. Threads provide a way to improve application performance through parallelism. Threads represent a software approach to improving performance of operating system by reducing the overhead thread is equivalent to a classical process.

Threads have been successfully used in implementing network servers and web server. They also provide a suitable foundation for parallel execution of applications on shared memory multiprocessors.


Write short notes on Out-of-band-data.


Write short notes on IPV4.

IP stands for Internet Protocol and v4 stands for Version Four (IPv4). IPv4 was the primary version brought into action for production within the ARPANET in 1983.
IP version four addresses are 32-bit integers which will be expressed in decimal notation.
Example- 192.0.2.126 could be an IPv4 address.
Parts of IPv4
Network part:
The network part indicates the distinctive variety that’s appointed to the network. The network part conjointly identifies the category of the network that’s assigned.
Host Part:
The host part uniquely identifies the machine on your network. This part of the IPv4 address is assigned to every host.
For each host on the network, the network part is the same, however, the host half must vary.
Subnet number:
This is the nonobligatory part of IPv4. Local networks that have massive numbers of hosts are divided into subnets and subnet numbers are appointed to that.


Write short notes on ICMPV6.

Write short notes on Shared Memory.

Describe the concept of Message passing with an example.

In computer science, message passing is a technique for invoking behavior (i.e., running a program) on a computer. The invoking program sends a message to a process (which may be an actor or object) and relies on that process and its supporting infrastructure to then select and run some appropriate code. Message passing differs from conventional programming where a process, subroutine, or function is directly invoked by name. Message passing is key to some models of concurrency and object-oriented programming.

Message passing is widely present in modern computer software. It is used as a way for the objects that make up a program to work with each other and as a means for objects and systems running on different computers (e.g., the Internet) to interact. Message passing may be implemented by various mechanisms, including channels.


Draw and explain the detail architecture of advanced UDP sockets.


What are the features of TCP/IP model.

TCP stands for Transmission Control Protocol a communications standard that enables application programs and computing devices to exchange messages over a network. It is designed to send packets across the internet and ensure the successful delivery of data and messages over networks.

TCP is one of the basic standards that define the rules of the internet and is included within the standards defined by the Internet Engineering Task Force (IETF). It is one of the most commonly used protocols within digital network communications and ensures end-to-end data delivery.

TCP organizes data so that it can be transmitted between a server and a client. It guarantees the integrity of the data being communicated over a network. Before it transmits data, TCP establishes a connection between a source and its destination, which it ensures remains live until communication begins. It then breaks large amounts of data into smaller packets, while ensuring data integrity is in place throughout the process.

As a result, high-level protocols that need to transmit data all use TCP Protocol. Examples include peer-to-peer sharing methods like File Transfer Protocol (FTP), Secure Shell (SSH), and Telnet. It is also used to send and receive email through Internet Message Access Protocol (IMAP), Post Office Protocol (POP), and Simple Mail Transfer Protocol (SMTP), and for web access through the Hypertext Transfer Protocol (HTTP).


The Internet Protocol (IP) is the method for sending data from one device to another across the internet. Every device has an IP address that uniquely identifies it and enables it to communicate with and exchange data with other devices connected to the internet.

IP is the main protocol within the internet layer of the TCP/IP. Its main purpose is to deliver data packets between the source application or device and the destination using methods and structures that place tags, such as address information, within data packets.

IP is responsible for defining how applications and devices exchange packets of data with each other. It is the principal communications protocol responsible for the formats and rules for exchanging data and messages between computers on a single network or several internet-connected networks. It does this through the Internet Protocol Suite (TCP/IP), a group of communications protocols that are split into four abstraction layers.


What are the types of Socket? Define socket inheritance and termination.

How is flow control accomplished in TCP?

What are the system calls used for sending data through a connection less socket?

How does a client and server communicate over connection oriented service ? Illustrate the steps using appropriate socket system calls.

What are elementary socket function ?

Write the similarities between UDP socket and TCP socket.

Explain in detail about address conversion functions.

Explain about socket, connect, bind, listen and accept function.

Explain socket address structure.

Explain elemenetary UDP socket. Write the similarities between TCP socket and raw socket.

Explain briefly the byte order functions.

Write the syntax for connect function.

Distinguish concurrent server from iterative server.

Distinguish synchronous I/O and asynchronous I/O.

compare IPV4 and IPV6.

Explain about thread creation and thread termination with suitable example.

Explain in detail about POSIX signal handling.

Explain in detail about boundary condition.

Write short notes on IP Options.

Write short notes on record locking.

What are the functions that can be used with mutex?

What are the functions that can be used with conditional variables?

What is socket address structure? Write down POSIX defination for the same.


Explain in details DNS.

Domain Name System (DNS) is a hierarchical naming system built on a distributed database for computers, services, or any resource connected to the Internet or a private network. It translates human readable domain names into the numerical identifiers associated with networking equipment, enabling devices to be located and connected worldwide. Analogous to a network “phone book,” DNS is how a browser can translate a domain name (e.g., “facebook.com”) to the actual IP address of the server, which stores the information requested by the browser.

The DNS directory is distributed worldwide, stored in special servers called dns servers (i.e., “domain name servers”) that are interconnected and communicate regularly to synchronize directory information and create redundancy.

If a client like a web browser sends a request containing a hostname, then a piece of software such as DNS resolver sends a request to the DNS server to obtain the IP address of a hostname. If DNS server does not contain the IP address associated with a hostname, then it forwards the request to another DNS server. If IP address has arrived at the resolver, which in turn completes the request over the internet protocol.


Explain the ICMPV6 socket Option.

Explain transmission control protocol. Find out the five disting elements that make a TCP connection unique. What are the steps involved for creating a TCP server.


Explain IP addressing mechanism and its different classes.

IP addressing provides mechanism to differentiate between hosts and network. Because IP addresses are assigned in hierarchical manner, a host always resides under a specific network. The host which needs to communicate outside its subnet, needs to know destination network address, where the packet/data is to be sent.