Введение

Поскольку самый сетевой в OS X и iOS основывается на протоколе связи TCP/IP, у Вас должно быть, по крайней мере, основное понимание основных принципов TCP/IP сама сетевая модель, прежде чем Вы начнете писать код. Несмотря на то, что можно выполнить некоторый высокий уровень сетевые задачи, не узнавая о базовых протоколах, зная, как вещи, которые работа над низким уровнем поможет Вам лучше понять, почему вещи идут не так, как надо и как обработать их, когда они делают.

Сразу

Интернет является обширной сетью соединенных компьютеров и других устройств, обеспечивающих коммуникацию во всем мире. Когда Вы посещаете веб-сайт, сервер, обеспечивающий то содержание, мог бы быть через комнату или через океан. Ваш запрос мог бы пройти через маршрутизатор Wi-Fi, кабельный модем, соединительную линию, спутниковую связь, или якобы даже быть поставлен почтовым голубем (RFC 1149). На высоком уровне каждый из этих сетевых носителей эквивалентен (показатели производительности несмотря на это). Однако на более низком уровне, устройства связываются друг с другом по-разному, в зависимости от того, какую физическую сеть они передают.

../Art/AboutNetworking.png

На низком уровне при доступе к веб-сайту компьютер разбивает каждый запрос в крошечные части, названные пакетами, и отправляет, каждый пакет индивидуально к специальному устройству вызвал маршрутизатор, передающий те пакеты к другому маршрутизатору, который поочередно вперед их к еще одному маршрутизатору, и т.д., пока пакеты не достигают целевого сервера, везде, где это могло бы быть. Ответ передают обратно подобным способом. На каждом шаге по пути, те пакеты могут быть разделены на многократные пакеты, обернутые в других типах пакетов, и т.д., в зависимости от включенных аппаратных средств.

Этот документ объясняет, как Интернет работает под капотом, но на умеренно высоком уровне, предназначенном для программистов. Если после чтения этого документа Вы хотите узнать больше, как различные Интернет-технологии работают, можно найти много сторонних книг, описывающих их более подробно. Кроме того, большинство Интернет-технологий низшего уровня описано RFCs (короткий для «Запроса комментария»), которые описывают протоколы очень подробно.

См. также

Этот документ является сопутствующим документом для Сетей Обзора, объясняющего, как записать хороший сетевой код.