What language is data transmitted over the Internet?

To clarify, I am a novice programmer and have a very simple question. If processors only understand machine language, then higher-level languages ​​must be "translated" or "interpreted" before being presented to the processor. My question is what language is the data that is sent over the internet? Is it sent to machine language or high level language?

I am trying to understand how computers talk to each other and how data is transferred between them at the bit / byte level.

Thanks in advance.

+3


source to share


2 answers


TL; DR Short answer: 1s and 0s

HOWEVER

This is a more complex answer, and honestly, if you want to answer this, something prompted you to ask and you really need to know the deal. :) So ...

Flashback to Telecommunications Class

The data is transferred to machine code. These are 1s and 0s. However, there is a general framework that will be translated using high level language. It depends on the NIC on the machine receiving the byte stream, the OS used by the machine and the server receiving the data. There are many different levels of request processing.

The network information stack is made up of many different parts that are described by the OSI model and vary depending on many different things. Let me escape quickly. Refer to http://vlsm-calc.net/models.php as I explain.



  • Physical . This is the transfer of data in messages 1s and 0s, or rather "ON" and "OFF", which are transmitted over the wire. The transmitted physical and direct electronic currents are described by the physical layer.

  • DataLink . This is the layer in which your physical signals are first analyzed. You can think of this as your network adapter in your machine. The network adapter will accept these raw messages and determine if the message is for you (your local NIC receiving data destined for your computer) or redirection (the packet is marked as needed to be sent to the local computer on your LAN).

  • Network . Ok, so this is the first point where the actual package is displayed. This is where structure is given to the content, segregation is parsed into packets, etc. It comes from IP (from TCP / IP). Typically, the protocol used determines if your messages are hard connections or connection requests, etc.

  • Transport (TCP / UDP). This is where the real meat of your query is created or analyzed. This determines if your packages are reliable, among many others.

... More layers.

I will not go into details because this is a very complex topic. Most of the time, in college, you would take a telecommunications class to help you learn the entire telecommunications stack. But, in short, data is sent over the wire in 1s and 0s and will be inserted with bitwise data like check digits, packet numbers, etc. That's when your machine will handle it. The NIC will accept the request and then pass this parsed stream to a socket on your computer (say com port 5035 [not, just an example]). If there is an application configured to listen on that port (say you have Fiddler running on your computer and read all the data that the NIC inserts). Then you can parse this stream with any language you want, providedthat you have an appropriate driver application configured to handle the connection on that port.

Sorry I walked a hard line between giving you a lot of information, but still trying to make it easy to understand. IF you are really interested in understanding how data is transmitted, I would highly recommend you buy some books / take the course and really take the time to understand. You will learn a very valuable interaction with the network hardware / OS / browser implementation. :) I would also mention How to understand network protocols? ...

The explanation given there is very VERY VERY. :)

+2


source


@Marc B's comment should have been the answer really.

I think you are confusing two terms: executable code and data. When you talk about a machine that does something, that includes code, programming or machine language, as you mentioned.

When you talk about two endpoints (computers, smartphones) communicating with each other over the Internet, it's about data and protocol.



So, to answer your question - data over the internet is transmitted in bits (usually packed in packets) and since the two endpoints have a protocol consensus they understand that they contain data (which could be anything, really) and then consume it accordingly.

Recommended Reading: TCP / IP Volume One Interworking by Douglas Comer

+1


source







All Articles