Network Protocols & Communications (Part 2)

Neso Academy
6 Nov 201910:32

Summary

TLDRThis computer networks course segment delves into the critical role of protocols in facilitating effective data communication. It covers the five essential elements of protocols, including message encoding, formatting, encapsulation, timing, size, and delivery options, using practical examples. The lecture also contrasts Peer-to-Peer networks, characterized by equal nodes without centralized control, with Client-Server networks, which offer scalability and centralized administration but rely heavily on the server's capacity.

Takeaways

  • πŸ“š Protocols are essential for effective communication in computer networks, governing how data is communicated in terms of what, how, and when.
  • πŸ”  The five elements of a protocol include message encoding, formatting and encapsulation, timing, size, and delivery options.
  • 🌐 Message encoding is the process of converting data into signals or waves based on the type of transmission medium, either wired or wireless.
  • πŸ“¬ Message formatting and encapsulation involve agreeing on a common data format and adding source and destination IP addresses for routing purposes.
  • 🚦 Message timing is crucial for flow control to prevent data loss due to mismatched sender and receiver speeds, and for acknowledgment of data receipt.
  • πŸ“ Message size pertains to breaking down large files into smaller segments for efficient transmission over networks with limited link capacity.
  • πŸ”’ The numbering scheme in message size helps in reassembling data at the destination and identifying any missing packets.
  • πŸ“‘ Message delivery options include unicast (one sender to one receiver), multicast (one sender to a group of receivers), and broadcast (one sender to all receivers).
  • πŸ”„ Peer-to-peer networks consist of equal nodes or peers without centralized administration, making them less scalable and suitable for smaller applications.
  • πŸ’Ό Client-server networks feature a centralized server that manages communication, making them scalable but potentially vulnerable to server overload.
  • πŸ”‘ IP addresses are critical for identifying network devices and are included in the encapsulation process for accurate data routing.
  • πŸ”„ The importance of protocols is highlighted through their role in ensuring data integrity, efficient communication, and network scalability.

Q & A

  • What are the three types of data communication mentioned in the script?

    -The three types of data communication mentioned are simplex, half duplex, and full duplex.

  • What is the fundamental role of protocols in computer networks?

    -Protocols are a set of rules that govern data communication, determining what is communicated, how it is communicated, and when it is communicated in the network.

  • What are the five elements of a protocol as discussed in the script?

    -The five elements of a protocol are message encoding, message formatting and encapsulation, message timing, message size, and message delivery options.

  • How does message encoding work in the context of different transmission media?

    -Message encoding involves converting data into signals for wired media or waves for wireless media, depending on the type of device and transmission medium used.

  • What is the purpose of encapsulation in message formatting?

    -Encapsulation adds source and destination information, such as IP addresses, to the data being sent, allowing intermediary devices to understand the data's origin and destination.

  • Why is message timing important in protocols?

    -Message timing is crucial for flow control and acknowledgment, ensuring that data is sent at a manageable pace for the receiver and that the sender knows when data has been successfully received.

  • Can you explain the concept of message size in protocols using the script's example of transporting a big box?

    -Message size in protocols refers to breaking down large data files into smaller segments that can be handled by the network's link capacity, similar to breaking a big box into smaller pieces for transportation.

  • What is the difference between unicast, multicast, and broadcast in terms of message delivery options?

    -Unicast involves one sender and one receiver, multicast involves one sender and a group of receivers, and broadcast involves one sender with all network devices as receivers.

  • What are the main characteristics of a Peer-to-Peer (P2P) network?

    -In a P2P network, each node is a peer with equal status, there is no centralized administration, and it is not scalable due to the limited number of connections each peer can handle.

  • What is the client-server network model and how does it differ from a P2P network?

    -The client-server network model features a centralized server that manages and responds to requests from clients. It is scalable and has a request-response model, differing from P2P networks by having a central point of administration.

  • What potential issue might arise in a client-server network due to its dependency on the server?

    -A client-server network might face server overloading when too many clients are using it simultaneously, which can affect performance and availability.

Outlines

00:00

πŸ“š Introduction to Network Protocols and Communication

This paragraph introduces the second part of the computer networks course, focusing on network protocols and communication. It recaps the concepts of data communication, data flow types such as simplex, half duplex, and full duplex, and the elements of protocols discussed in part one. The session aims to delve deeper into protocols, emphasizing their importance in computer networks, and to explore Peer-to-Peer and Client-Server network models. The paragraph also revisits the concept of protocol as a set of rules governing data communication, highlighting the five elements of a protocol: message encoding, message formatting and encapsulation, message timing, message size, and message delivery options. An example of message encoding is given, illustrating how data is converted into signals or waves based on the transmission medium, whether wired or wireless.

05:01

πŸ”„ Protocol Elements: Message Timing and Sizing

This paragraph discusses the importance of message timing and message size in protocols. It explains the necessity of acknowledgment in networks to ensure data reception and the role of flow control in preventing data loss due to speed discrepancies between sender and receiver. The concept of message size is illustrated with an analogy of transporting a large box, which needs to be broken down into smaller, manageable pieces for efficient transport. The paragraph also introduces numbering schemes to track and reassemble these pieces, which is analogous to segmenting large files into smaller packets for network transmission. Additionally, it covers message delivery options, including unicast, multicast, and broadcast, providing examples for each to clarify the differences in communication models.

10:02

🀝 Network Models: Peer-to-Peer and Client-Server

The final paragraph of the script explores two network models: Peer-to-Peer and Client-Server. In a Peer-to-Peer network, each node operates as an equal 'peer' without a centralized administration, which makes it suitable for smaller applications but not scalable due to its inherent limitations in connecting multiple devices. On the other hand, the Client-Server model features a centralized server that manages communication and data, making it scalable and suitable for larger applications. However, this model's dependency on the server can lead to overload issues. The paragraph concludes with a brief recap of the lecture's main points, including the role of protocols and the characteristics of different network models.

Mindmap

Keywords

πŸ’‘Protocols

Protocols are a set of rules that govern data communication in computer networks. They are essential for ensuring effective and orderly exchange of information between devices. In the video, protocols determine how data is communicated, including the encoding, formatting, timing, size, and delivery options. An example given is the conversion of data into signals or waves depending on whether the transmission medium is wired or wireless.

πŸ’‘Message Encoding

Message encoding in the context of the video refers to the process of converting data into a format that can be transmitted over a specific medium, whether it be wired or wireless. It is part of the protocol's role to ensure that the data is appropriately encoded for the type of transmission medium used, as illustrated by the example of Tom's computer converting data into signals for a wired connection and waves for a wireless connection.

πŸ’‘Message Formatting and Encapsulation

Message formatting and encapsulation involve agreeing on a common format for data exchange and adding necessary information to the data being sent, such as source and destination IP addresses. This process is crucial for ensuring that the data is understandable by the receiver and can be routed correctly through intermediary devices, as explained in the video with the example of IP addresses being added to the data for identification purposes.

πŸ’‘Message Timing

Message timing is the aspect of protocols that deals with the synchronization and pacing of data transmission to prevent data loss due to disparities in sender and receiver speeds. The video explains the importance of flow control and acknowledgment timing, where the sender adjusts the rate of data transmission based on the receiver's capacity and waits for acknowledgments to ensure data is received correctly.

πŸ’‘Message Size

The message size concept pertains to the division of large data files into smaller segments for efficient transmission over networks with limited link capacity. The video uses the analogy of transporting a large box with a small vehicle to explain how data is broken down into manageable pieces and numbered to ensure correct reassembly and to detect any missing parts during transmission.

πŸ’‘Message Delivery Options

Message delivery options refer to the various methods of data delivery in a network, including unicast, multicast, and broadcast. The video explains these options with examples: unicast involves one sender and one receiver, multicast involves one sender and a group of receivers, and broadcast involves one sender and all receivers in the network getting the data.

πŸ’‘Peer-to-Peer Network

A peer-to-peer network is a decentralized network where each node, or peer, has equal status and no centralized administration. The video points out that while this model is suitable for smaller applications, it lacks scalability and central control, which can be a limitation for larger applications.

πŸ’‘Client-Server Network

A client-server network is a model where a central server provides services or resources to multiple clients, which request and receive data from the server. The video describes this as a scalable and centralized administration model, which is suitable for larger applications but may face issues with server overload when too many clients are dependent on it.

πŸ’‘Flow Control

Flow control is a technique used by protocols to manage the rate of data transmission between a sender and a receiver to prevent data loss. The video explains that flow control ensures the sender transmits data at a speed that the receiver can handle, and it involves the receiver informing the sender of its capacity to receive data packets.

πŸ’‘Acknowledgment

In the context of the video, an acknowledgment is a signal or message sent from the receiver back to the sender to confirm that data has been received. Acknowledgments are crucial for the sender to know if the data transmission was successful and to trigger retransmission of data if the acknowledgment is not received within a certain timeframe.

πŸ’‘Scalability

Scalability in the video refers to the ability of a network to accommodate an increasing number of devices or users without degradation of performance. The video contrasts the scalability of peer-to-peer networks, which is limited due to the lack of centralized control, with client-server networks, which are more scalable but may face challenges with a single point of administration.

Highlights

Introduction to the importance of protocols in computer networks for effective communication.

Explanation of the five elements of a protocol: message encoding, formatting and encapsulation, timing, size, and delivery options.

Message encoding's role in converting data into signals or waves based on the transmission medium.

The necessity of mutual agreement on message formatting for understandable communication between sender and receiver.

Encapsulation process adds source and destination IP addresses to data for routing purposes.

Message timing's importance for flow control to prevent data loss due to speed discrepancies between sender and receiver.

The function of acknowledgment in message timing to ensure data receipt and trigger retransmission if necessary.

Illustration of message size management through breaking down large files into smaller, sequentially numbered segments for reliable transport.

Differentiation between unicast, multicast, and broadcast message delivery options.

Overview of a peer-to-peer network where each node operates at an equal level without centralized administration.

Limitations of peer-to-peer networks in terms of scalability and lack of centralized control.

Introduction to client-server networks featuring centralized administration and the request-response model.

Advantages of client-server networks in terms of scalability to accommodate a large number of devices.

Potential issues with client-server networks, such as server overload when too many devices rely on a single server.

Summary of the lecture's key points on protocols, their elements, and the comparison between peer-to-peer and client-server networks.

The practical applications of protocols in ensuring efficient and reliable data communication in various network types.

Transcripts

play00:00

Hello everyone,

play00:01

welcome back to the computer networks course

play00:03

and we are in part two of network protocols and communication.

play00:08

In part one, we have seen data communication,

play00:11

data flow such as: simplex, half duplex and full duplex.

play00:15

In part one, we have also seen about

play00:17

protocols and the elements of protocols.

play00:20

In today's session, we will deal more on protocols

play00:23

and the importance of protocol in computer networks.

play00:26

We will also understand

play00:28

what is Peer-to-Peer network and Client-Server network.

play00:31

We will now have a small recapture on protocol.

play00:34

Whatever the communication pattern is,

play00:36

if we want effective and good communication,

play00:39

this cannot happen without protocols.

play00:42

It is a set of rules that governs data communication.

play00:45

Any data communication must be governed by some set of rules

play00:50

and we call these rules as protocol.

play00:52

Simply, protocol is a rule.

play00:54

Because these protocols determines:

play00:57

What is communicated in the network?

play00:59

How it is communicated in the network?

play01:01

And when it is communicated?

play01:03

In the previous lecture we have seen

play01:05

there are five elements of a protocol.

play01:07

Let us just recapture all the five elements.

play01:09

A protocol deals with message encoding,

play01:12

message formatting and encapsulation, message timing,

play01:16

message size and message delivery options.

play01:19

Now, we will see what is message encoding.

play01:22

Let Tom be the user.

play01:23

Now Tom wants something from amazon.com.

play01:26

He opens the browser and gives the request to amazon.com

play01:30

and amazon.com responds back with what Tom needed.

play01:33

If we observe, this computer that is Tom's computer,

play01:36

is connected with a wired medium.

play01:38

The transmission medium here is wired medium.

play01:41

This transmission medium is also called as a link.

play01:43

This computer converts the data into signals

play01:47

and sends the signal on the transmission medium

play01:50

which is the cable here.

play01:51

In case, if Tom wants to access same amazon.com

play01:56

but not with the computer now with a smart-phone.

play01:59

Now this smart phone is connected to the network

play02:02

with the help of a wireless medium.

play02:03

And Tom's device -- that is this smart-phone converts the data

play02:06

into waves because the medium is wireless.

play02:09

In both the cases, whether it is a wired medium or a wireless medium

play02:14

protocols converts the data into signals or waves

play02:18

by appropriately identifying the device to which it is connected to.

play02:21

In this case, Tom's mobile phone -- that is the smart-phone

play02:24

converts the data into waves

play02:26

and after this, the data is received by this router

play02:29

and it has to forward this to router 1 or router 2.

play02:32

Now, this router is connected to router 1 as well as router 2

play02:37

with the help of a wired medium.

play02:39

The protocol in this router converts these waves into signals.

play02:43

This is what is the very important part of a protocol.

play02:46

We will now see what is message formatting and encapsulation.

play02:50

Both the sender and the receiver must mutually agree upon common format

play02:55

so that the communication becomes understandable.

play02:58

At the same time, some encapsulation is also done.

play03:02

With data that it is going to send,

play03:04

this is going to add few more information with the data

play03:07

that is the source information and the destination information.

play03:11

To be precise, the IP addresses are added

play03:14

to the data which is going to be sent.

play03:16

Don't worry about this IP address now,

play03:18

we have a separate lecture on IP address.

play03:21

For time being now take like this,

play03:23

every human is identified by his name.

play03:26

Likewise, every computer in the network

play03:29

or every device in the network is identified by its IP address.

play03:33

Suppose if this computer wants to send some data,

play03:36

with data it is going to encapsulate

play03:38

the source IP address and the destination IP address.

play03:41

This source IP address and destination IP address

play03:44

are obviously going to be forwarded through any intermediary devices.

play03:48

When any device receives that packet or data,

play03:51

it knows form where the data is coming and what is the destination.

play03:56

In order to forward the data to the destination,

play03:58

it needs source information and the destination information.

play04:01

This is message formatting and encapsulation.

play04:05

So far we have seen message encoding,

play04:07

message formatting and encapsulation.

play04:10

Now we will see why message timing is to be handled by a protocol.

play04:14

If the sender is very fast and the receiver is a very slow receiver

play04:18

and obviously receiver cannot handle the flow.

play04:21

So there are chances for the data to get lost.

play04:24

To avoid this loss due to high speed sending,

play04:27

flow control has to be ensured by the protocol.

play04:30

That is, in what speed the sender have to send,

play04:33

that information is given to the sender.

play04:36

This information will be provided to the sender by the receiver.

play04:39

It means, if this guy can handle ten data packets at a time,

play04:44

so that information will be sent to the sender.

play04:47

So this sender will start sending ten packets at a time.

play04:51

This is very important and this is what we call as flow control.

play04:54

And protocols are going to do this flow control.

play04:57

At the same time, after sending the data,

play05:00

the sender will wait for a certain period of time.

play05:03

Because the time it is waiting in order to receive an acknowledgment.

play05:06

This acknowledgment is really necessary in the network

play05:10

because the sender have to ensure

play05:11

that the data is received by the destination.

play05:14

If the acknowledgment is not received on time,

play05:17

the sender understands that there are some loss

play05:19

and it start re-transmitting that packet or data again.

play05:23

So that there is no loss by the receiver.

play05:25

So this flow control and the acknowledgment timing

play05:29

are maintained by protocols in the form of message timing.

play05:33

The next element of the protocol is message size.

play05:36

Let's see an example.

play05:37

We have a very big box to be transported from one building to other.

play05:42

To transport the box, we are given with a very small vehicle.

play05:45

This vehicle can handle very small box but not that big box.

play05:49

What will we do in order to do this transportation?

play05:52

Obviously we will break the big box into smaller pieces,

play05:55

these pieces can be handled by the vehicle.

play05:58

And each small pieces are transported

play06:00

to the other building that is the destination.

play06:03

But there is a problem here. There are some chances

play06:06

for the pieces to be missed during transportation.

play06:08

To find it out, we use numbering scheme.

play06:11

That is, when we break the big box into small pieces,

play06:15

we will put numbers on every small box.

play06:18

So that the destination can reassemble it in the right way.

play06:21

At the same time, this numbering will also help

play06:23

to identify if any packets or pieces are missing.

play06:27

Likewise, if there is a big file but the link capacity is small,

play06:31

so the protocol in this computer breaks this big file into smaller segments.

play06:36

And each segment is numbered sequentially.

play06:39

Now these smaller segments can be transported over the network.

play06:42

And this numbering will also help us to identify the missing packets.

play06:46

After receiving all the smaller packets,

play06:49

this receiver will reassemble all the packets.

play06:52

With the help of numbering, it identifies

play06:54

if there are any missing packets.

play06:56

This is what is exactly the message sizing of a protocol.

play06:59

And finally, the message delivery option.

play07:02

Suppose if this guy wants to send exactly

play07:05

to one destination say for example this web server,

play07:08

then one sender and one receiver.

play07:11

This is an example for uni-cast communication.

play07:14

This is unicasting because one sender and one receiver.

play07:18

And the communication can also be multicasting.

play07:21

It means, in this network -- just see this is one network

play07:25

and in this network, if this computer is sending data packets

play07:28

to these three computers alone,

play07:30

but not to this printer and voice-over IP Phone,

play07:33

then this will come under multicasting.

play07:35

Because there is a sender and group of receivers

play07:39

and not all receivers.

play07:40

This is multicasting. Example: FM Radio

play07:44

If we tune onto that frequency,

play07:46

then only we will receive that signal

play07:48

otherwise we will never receive that.

play07:50

Broadcasting means if this guy is sending some data packet

play07:53

and everybody in the network will receive that data packet.

play07:57

This is what broadcasting is.

play07:58

One sender all receiver is called as broadcasting.

play08:02

And now we will see what is peer-to-peer network.

play08:05

In a peer-to-peer network every node is called as a peer

play08:09

and they are in equal level.

play08:11

It means there is nobody superior and there is nobody inferior.

play08:15

The problem with this is, there is nobody

play08:18

in the centralized part to administer the communication.

play08:21

It means whatever rights this guy has

play08:24

the same kind of rights this guy will also have.

play08:26

And there is no centralized administration.

play08:29

This is suitable for smaller applications

play08:31

but not for larger applications.

play08:34

And the problem with this scenario is,

play08:36

this peer-to-peer network is -- it not scalable.

play08:40

We have already seen what is scalability in our previous lecture.

play08:43

Scalability means new devices can be added to the network.

play08:47

But this is not a scalable network.

play08:49

Why because? If this computer has only two ports.

play08:52

Ports means how many devices it can be connected with.

play08:55

-- If this computer has two ports,

play08:57

then only two devices can be connected with it.

play08:59

And that is why we call peer-to-peer network is not scalable.

play09:04

Coming to the client server network,

play09:07

here we will have a centralized administration.

play09:09

And this server is going to do the centralized administration.

play09:12

And all the data will be here and these are all called as slaves

play09:16

and this is going to be the master.

play09:18

In other words, these are all going to be called as clients

play09:21

and this is going to be the server.

play09:23

That is why we call this scheme as client-server network.

play09:26

It is also called as request-response model.

play09:29

Say if this guy wants some data form the server,

play09:31

it first gives the request

play09:33

and after accepting the request,

play09:35

this server gives the response whatever it is requested.

play09:38

And obviously this is a scalable network.

play09:40

Even if 100 devices wants to participate

play09:43

in the network it can be achieved.

play09:45

But the problem is we are too dependent on the server.

play09:48

When everyone starts using this server,

play09:51

there are chances for this server to get overloaded.

play09:54

And that's it guys.

play09:55

Now we shall recapture what we have seen today.

play09:58

We have understood what are protocols

play10:00

and the role of protocols in computer networks.

play10:02

We have seen message encoding,

play10:04

message formatting and encapsulation,

play10:06

message size, message timing and message delivery options

play10:10

in a detailed manner with an example.

play10:12

And we have also understood what is peer-to-peer network

play10:15

and what is client-server network.

play10:16

I hope you enjoyed the lecture.

play10:18

Thank you very much.

Rate This
β˜…
β˜…
β˜…
β˜…
β˜…

5.0 / 5 (0 votes)

Related Tags
Network ProtocolsData CommunicationSimplexHalf DuplexFull DuplexCommunication RulesPeer-to-PeerClient-ServerMessage EncodingFlow ControlAcknowledgment TimingScalability