Protocols and standards on the web: Difference between revisions

From Computer Science Wiki
No edit summary
Line 25: Line 25:
* What is the TCP protocol: [https://www.youtube.com/watch?v=4IMc3CaMhyY Click here to watch a video]
* What is the TCP protocol: [https://www.youtube.com/watch?v=4IMc3CaMhyY Click here to watch a video]
* Please watch this part 2: [https://www.youtube.com/watch?v=F27PLin3TV0&index=13&list=PLowKtXNTBypH19whXTVoG3oKSuOcw_XeW part 2 of TCP]
* Please watch this part 2: [https://www.youtube.com/watch?v=F27PLin3TV0&index=13&list=PLowKtXNTBypH19whXTVoG3oKSuOcw_XeW part 2 of TCP]
Practical hands-on look at open TCP connections on your Mac:
lsof -i | grep -E "(LISTEN|ESTABLISHED)"


== Explain the importance of protocols ==
== Explain the importance of protocols ==

Revision as of 07:23, 3 October 2019

Networks[1]

In telecommunications, a communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any kind of variation of a physical quantity. These are the rules or standard that defines the syntax, semantics and synchronization of communication and possible error recovery methods. Protocols may be implemented by hardware, software, or a combination of both.

Communicating systems use well-defined formats (protocol) for exchanging messages. Each message has an exact meaning intended to elicit a response from a range of possible responses pre-determined for that particular situation. [2]

Standards are guidelines, these are more abstract. You can have products that meet the standard, exceed the standard or below a certain standard.

Protocols are rules. They define exactly how data is exchanged and the expected behavior. These are rules you must follow exactly or your device will not be able to communicate at all with other devices. You can not exceed the protocol but its possible that you do not implement all the features of the protocols or you may implement the protocol completely.[3]

Network protocols[edit]

This video is very technical, but one of the best I could find about network protocols. It may be helpful to review the OSI model prior to watching this.

IP protocol[edit]

TCP protocol[edit]

Practical hands-on look at open TCP connections on your Mac:

lsof -i | grep -E "(LISTEN|ESTABLISHED)"

Explain the importance of protocols[edit]

Without protocols and standards we wouldn't be able to achieve interoperability. That is, if my website used a totally different protocol for storing data (non-html) your browser would not be able to parse it, and you as a user wouldn't be able to understand it.

Protocols are important because they:

  • Ensure data integrity (overall completeness, accuracy and consistency of data[4])
  • Regulate flow control (In data communications, flow control is the process of managing the rate of data transmission between two nodes to prevent a fast sender from overwhelming a slow receiver.[5])
  • Manage deadlock (A condition that occurs when two processes are each waiting for the other to complete before proceeding [6])
  • Manage congestion (Network congestion in data networking is the reduced quality of service that occurs when a network node or link is carrying more data than it can handle.[7])
  • Manage error checking (techniques that enable reliable delivery of digital data over unreliable communication channels.[8])

Why standards are important[edit]

Value of Creating Standards at W3C[9] W3C continues to evolve to provide the community a productive environment for creating Web standards. W3C standards:

  • are created following a consensus-based decision process;
  • consider aspects of accessibility, privacy, security, and internationalization;
  • reflect the views of diverse industries and global stakeholders;
  • balance speed, fairness, public accountability, and quality;
  • benefit from Royalty-Free patent licensing commitments from participants;
  • are stable (and W3C seeks to ensure their persistence at the published URI);
  • benefit from wide review from groups inside and outside W3C;
  • are downloadable at no cost;
  • are maintained in a predictable fashion;
  • are strengthened through interoperability testing;

Do you understand this topic?[edit]

You should be able to:

  • Define protocol
  • Explain the importance of networking protocols
  • Explain the importance of standards on the web

Do you have an advanced understanding about this topic?[edit]

  • Define data integrity
  • Define source integrity
  • Define flow control
  • Define deadlock
  • Define congestion management
  • Define error correction
  • Define error checking

See Also[edit]

Standards[edit]

These standards are used from the IB Computer Science Subject Guide[10]

  • Explain the importance of protocols and standards on the web.

References[edit]