Как обжать розетку для интернета


Как подключить интернет розетку и коннектор: фото, видео

Главная » Электрика » Подключение интернет розетки RJ-45 и обжим коннектора

Во многих семьях подключается к интернету несколько устройств: без всемирной паутины мы жизни себе и не представляем, потому каждому требуется своя линия. Работают они, в основном, по беспроводному протоколу — Wi-Fi, но провод все-таки имеется, так как пока проводной интернет более стабильный, чем безпроводной. Во время ремонта все провода прячутся в стены и «интернетовские» не исключение. Их, как электрические, заводят на розетки, только другого стандарта: называют компьютерными или информационными. Они могут быть с разными разъемами, но наиболее распространенный — RJ 45. Установку и подключение можно сделать самостоятельно, но так как внешне выглядит разъем непривычно, проводов в нем больше чем два или три, да и соединение обеспечивается не пайкой и не скрутками, необходимо знать, как подключить интернет розетку а также коннектор, который в нее должен вставляться. 

Обжим коннектора RJ-45

Содержание статьи

Заходящий в квартиру или дом интернет-кабель, который чаще всего называют витой парой, часто заканчивается небольшим пластиковым разъемом. Вот это пластиковое устройство и есть коннектор, причем обычно RJ45.  На профессиональном жаргоне их еще называют «Джек».

Так выглядит коннектор RJ-45

Корпус его прозрачный, благодаря чему видны провода разного цвета. Такие же устройства используются на соединительных проводах, которыми соединяются компьютеры между собой или с модемом. Отличаться может только порядок расположения (или как говорят компьютерщики, распиновки) проводов. Этот же коннектор вставляется в компьютерную розетку. Если вы поймете, как распределяются проводя в коннекторе, с подключением интернет-розетки проблем не будет.

Схема подключения интернет кабеля по цветам

Есть две схемы подключения: T568А и T568В. Первый вариант — «А» в нашей стране практически не используется, а повсеместно провода располагают по схеме «B». Ее и необходимо запомнить, так как именно она требуется в большинстве случаев.

Схемы подключения интернет кабеля по цветам (используйте вариант B)

Чтобы окончательно прояснить все вопросы, поговорим еще о количестве проводов в витой паре. Этот интернет-кабель бывает 2-х парным и 4-х парным. Для передачи данных со скоростью до 1 Гб/с используют 2-х парные кабели, от 1 до 10 Гб/с — 4-х парные. В квартиры и частные дома сегодня, в основном, заводят потоки до 100 Мб/с. Но с нынешними темпами развития интернет-технологии вполне возможно, что уже через пару лет скорости будут исчисляться Мегабитами. Именно по этой причине лучше сразу расшить сеть из восьми, а не из 4-х проводников. Тогда при изменении скорости вам не придется ничего переделывать. Просто аппаратура будет использовать большее число проводников. Разница в цене кабеля небольшая, а розетки и коннекторы для интернета все-равно используют восьми-контактные.

Если сеть уже разведена двухпарным, используйте те же коннекторы, только после первых трех проводников, уложенных по схеме B, пропускаете два контакта и зеленый проводник укладываете на место шестого (смотрите фото).

Схема подключения 4-х проводного интернет кабеля по цветам

Обжим витой пары в коннекторе

Для обжима проводов в коннекторе есть специальные клещи. Они стоят порядка 6-10$ в зависимости от производителя. Работать ими удобнее, хотя можно обойтись обычной отверткой и кусачками.

Клещи для обжима коннекторов (один из вариантов)

Сначала с витой пары снимается изоляция. Ее снимают на расстоянии 7-8 см от конца кабеля. Под ней есть четыре пары проводников разных цветов, скрученых по двое. Иногда имеется также тонкий экранирующий провод, его просто отгибаем в сторону — он нам не нужен. Пары раскручиваем, провода выравниваем, разводя в разные стороны. Затем складываем по схеме «В».

Порядок заделки разъема RJ-45 в коннекторе

Провода в нужном порядке зажимаем между большим и указательным пальцем, Проводки выкладываем ровно, плотно друг к другу. Выровняв все, берем кусачки и отрезаем лишнюю длину выложенных по порядку проводов: остаться должно 10-12 мм. Если приложить коннектор как на фото, изоляция витой пары должна начинаться выше защелки.

Отрезаем так, чтобы остались проводки 10-12 мм

Витую пару с отрезанными проводами заводим в коннектор. Обратите внимание, что взять его нужно защелкой (выступ на крышке) вниз.

Заводим провода в коннектор

Каждый проводник должен попасть в специальную дорожку. Вставляют провода до упора — они должны дойти до края коннектора. Придерживая кабель у края разъема, его вставляют в клещи. Ручки клещей сводят плавно сводят вместе. Если корпус стал нормально, особых усилий не требуется. Если чувствуете, что «не идет» перепроверьте, правильно ли стоит RJ45 в гнезде. Если все нормально, попробуйте еще раз.

При надавливании имеющиеся в клещах выступы подвинут проводники к микроножам, которые прорежут защитную оболочку и обеспечат контакт.

Как работают клещи для обжима коннекторов

Подобное соединение надежное и проблемы с ним возникают редко. А если что и случается, перезаделать кабель легко: отрезаете и повторяете процесс с другим «джеком».

О подключении люстры можно прочесть тут.

Видео-урок: обжим коннектора RJ-45 клещами и отверткой

Процедура несложна, ее легко повторить. Возможно, вам будет легче все проделать, после видео. В нем показано как работать клещами, а также как обойтись без них, а проделать все при помощи обычной прямой отвертки.

Как подключить интернет кабель к розетке

Теперь дошли непосредственно до того, как подключить интернет розетку. Начнем с разновидностей. Как и обычные электрические розетки, информационные бывают двух модификаций:

  • Для внутреннего монтажа. В стену вмуровывается монтажная пластиковая коробка. В нее затем вставляется и закрепляется контактная часть розетки, а сверху закрывается все пластиковой декоративной панелью.

    Компьютерная розетка RJ45 внутренняя

  • Для наружного монтажа. Этот тип розеток очень похож по внешнему виду на привычные телефонные розетки: небольшой пластиковый корпус, которые крепится на стену. Он тоже состоит из нескольких частей. Сначала монтируется корпус с контактной пластиной, потом подключаются провода, и после все закрывается защитным колпачком.

    Компьютерная розетка RJ-45 для наружного монтажа — настенная

По количеству точек подключение есть одинарные и двойные компьютерные розетки.

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

Как подключить настенную компьютерную розетку

Внутри каждой розетки есть подсказка о том, как размещать провода при подключении интернет-кабеля. Производители наклеивают цветовую схему, которую мы видели при обжиме коннектора. Так же имеются два варианте — «А» и «B», и точно также используем мы вариант «В».

Пример нанесения цветовой маркировки на корпусе компьютерной розетки

Корпус крепят на стену, как правило входным отверстием для кабеля вверх, компьютерным разъемом вниз. Далее действия просты:

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

    Подключение настенной розетки с 4-мя проводами

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

    Восемь проводников подключают по схеме «В»

  • После того как все проводники достигли своего места лишнее (торчащие кусочки) обрезают.
  • Надевают крышку.

Подключение витой пары к розетке действительно несложная процедура. Даже в первый раз она займет несколько минут. Еще раз посмотреть что и как делают можно в видео. В нем сначала показано подключение интернет-кабеля с 4 проводами, потом — с 8.

Иногда, чтобы выключить свет, приходится вставать в кровати. Но можно сделать управление освещением с нескольких точек. Как — читайте в статье про подключение проходных выключателей.

Как подключить внутреннюю интернет-розетку

Монтаж пластиковой коробки описывать не будем — это другая тема. Разберемся в особенностях подключения и сборки. Основная загвоздка тут в том, как разобрать компьютерные розетки. При подключении к ним проводников необходимо добраться до контактной части: небольшого керамического или пластикового корпуса с вмонтированными контактами-микроножами. Вот на эту монтажную пластину подключаются проводники, а потом снова собирается корпус. И вся проблема в том, что у разных производителей они собираются/разбираются по-разному.

Например, у популярного производителя компьютерных розеток Legrand (Легранд) для того чтобы добраться до разъемов в компьютерной розетке  Legrand Valena RJ45, необходимо снять лицевую крышку. Под ней обнаружится белая пластиковая крыльчатка (как на фото), на которой нанесена стрелка.

Как разобрать интернет розетку RJ-45 Legrand (Легранд)

Необходимо крыльчатку повернуть по стрелке, после чего в руках у вас останется корпус и контактная пластина. На ней нанесена цветная маркировка проводников. Подключение ничем не отличается, разве что — сначала в отверстие на пластине необходимо продеть витую пару, а потом разводить провода.

Для наглядности, посмотрите видео.

Еще один популярный производитель такого оборудования —  Lezard (Лезард). У него система другая. Лицевая панель и металлическая рамка фиксируются на небольших болтах. Их открутить легко, а вот внутренняя контактная пластина держится все на зажимах. Собирая и разбирая компьютерные розетки Lezard (Лезард) в нужных местах необходимо отжать контакты отверткой.

Как разобрать интернет-розетку Lezard (Лезард)

Чтобы вынуть пластиковую контактную группу из корпуса, необходимо надавить на защелку, находящуюся на верху. После чего в руках у вас окажется небольшая коробочка. Но и это еще не все. Необходимо снять пластиковую крышку, которая закрывает и прижимает проводники. Снимают ее поддевая отверткой боковые лепестки. Пластик упругий и усилия требуются довольно приличные. Только не переусердствуйте: это все-таки пластик. После чего разводка проводов стандартная: по нанесенной на боках разметке (не забываем, что используем схему «В»).

И снова, для закрепления материала советуем посмотреть видео.

Если знать, как подключить интернет розетку, даже с незнакомой моделью разобраться несложно. И вы теперь сможете модернизировать свою сеть сами (увеличить длину витой пары, перенести компьютер в другое место, сделать еще одну точку подключения и т.д.), без привлечения специалистов. Остался еще один вопрос: как подключать двойные розетки. К ним подводят два кабеля и дальше идет расшивка по цветовой схеме. Это возможно, когда сеть у вас формируется модемом или заходят две интернет-линии. Можно ли одним кабелем расшить оба входа? Можно, но нужно не запутаться в цветовом обозначении проводов в дальнейшей разводке сети (помнить какой цвет вместо какого вы использовали).

.net - Как установить соединение через Интернет?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.Программирование сокетов

на Python (Руководство) - Real Python

Сокеты и API сокетов используются для отправки сообщений по сети. Они обеспечивают форму межпроцессного взаимодействия (IPC). Сеть может быть логической локальной сетью для компьютера или сетью, физически подключенной к внешней сети, с собственными подключениями к другим сетям. Очевидным примером является Интернет, к которому вы подключаетесь через своего провайдера.

В этом руководстве есть три различных итерации построения сервера и клиента сокетов с помощью Python:

  1. Мы начнем обучение с рассмотрения простого сервера и клиента сокета.
  2. После того, как вы познакомились с API и принципами работы в этом начальном примере, мы рассмотрим улучшенную версию, которая обрабатывает несколько подключений одновременно.
  3. Наконец, мы перейдем к созданию примера сервера и клиента, которые функционируют как полноценное приложение для сокетов, со своим собственным настраиваемым заголовком и содержимым.

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

Примеры в этом руководстве используют Python 3.6. Вы можете найти исходный код на GitHub.

Сети и розетки - большие предметы. О них написаны буквально тома. Если вы новичок в сокетах или сетях, это совершенно нормально, если вы чувствуете себя перегруженным всеми терминами и частями. Я знаю, что сделал!

Но не расстраивайтесь.Я написал для вас это руководство. Как и в случае с Python, мы можем учиться понемногу за раз. Воспользуйтесь функцией закладок в браузере и вернитесь, когда будете готовы к следующему разделу.

Приступим!

Фон

Розетки имеют долгую историю. Их использование началось с ARPANET в 1971 году, а позже стало API в операционной системе Berkeley Software Distribution (BSD), выпущенной в 1983 году, под названием Berkeley Sockets.

Когда в 1990-х годах появился Интернет, вместе с World Wide Web росло и сетевое программирование.Веб-серверы и браузеры были не единственными приложениями, использующими преимущества новых подключенных сетей и сокетов. Широкое распространение получили клиент-серверные приложения всех типов и размеров.

Сегодня, хотя базовые протоколы, используемые API сокетов, развивались с годами, и мы видели новые, низкоуровневый API остался прежним.

Наиболее распространенным типом приложений сокетов являются приложения клиент-сервер, в которых одна сторона выступает в роли сервера и ожидает соединений от клиентов.Это тип приложения, о котором я расскажу в этом руководстве. В частности, мы рассмотрим API сокетов для Интернет-сокетов, иногда называемых сокетами Беркли или BSD. Существуют также доменные сокеты Unix, которые могут использоваться только для связи между процессами на одном и том же хосте.

Обзор API сокетов

Модуль сокетов

Python предоставляет интерфейс к API сокетов Беркли. Это модуль, который мы будем использовать и обсуждать в этом руководстве.

Основные функции и методы API сокетов в этом модуле:

  • розетка ()
  • привязка ()
  • слушать ()
  • принять ()
  • подключение ()
  • connect_ex ()
  • отправить ()
  • прием ()
  • закрыть ()

Python предоставляет удобный и согласованный API, который напрямую отображается на эти системные вызовы, их аналоги на C.В следующем разделе мы рассмотрим, как они используются вместе.

В составе стандартной библиотеки Python также есть классы, упрощающие использование этих низкоуровневых функций сокетов. Хотя это не рассматривается в этом руководстве, см. Модуль socketserver, платформу для сетевых серверов. Также доступно множество модулей, реализующих Интернет-протоколы более высокого уровня, такие как HTTP и SMTP. Для обзора см. Интернет-протоколы и поддержка.

Сокеты TCP

Как вы вскоре увидите, мы создадим объект сокета, используя сокет .socket () и укажите тип сокета как socket.SOCK_STREAM . Когда вы это делаете, по умолчанию используется протокол управления передачей (TCP). Это хороший вариант по умолчанию и, вероятно, то, что вам нужно.

Почему вам следует использовать TCP? Протокол управления передачей (TCP):

  • Надежен: пакетов, отброшенных в сети, обнаруживаются и повторно передаются отправителем.
  • Имеет порядок доставки данных: данных считываются вашим приложением в том порядке, в котором они были записаны отправителем.

В отличие от этого сокеты протокола пользовательских дейтаграмм (UDP), созданные с помощью сокета .SOCK_DGRAM , не являются надежными, и данные, считываемые получателем, могут отличаться от порядка записи отправителя.

Почему это важно? Сети - это лучшая система доставки. Нет никакой гарантии, что ваши данные достигнут пункта назначения или что вы получите то, что вам отправили.

Сетевые устройства (например, маршрутизаторы и коммутаторы) имеют ограниченную доступную полосу пропускания и собственные системные ограничения.У них есть процессоры, память, шины и интерфейс

.HOWTO по программированию сокетов

- документация Python 3.9.0

Автор

Гордон Макмиллан

Аннотация

Розетки используются почти везде, но являются одними из самых неправильно понятые технологии вокруг. Это обзор розеток на 10 000 футов. На самом деле это не учебник - вам еще нужно поработать, чтобы что-то получить оперативный. Он не касается тонких моментов (а их очень много), но Я надеюсь, что это даст вам достаточно знаний, чтобы начать их прилично использовать.

Розетки

Я буду говорить только о сокетах INET (то есть IPv4), но они составляют не менее 99% используемые розетки. И я буду говорить только о сокетах STREAM (т. Е. TCP) - если только вы знать, что вы делаете (в этом случае этот HOWTO не для вас!), вы получите лучшее поведение и производительность от сокета STREAM, чем что-либо еще. Я буду попытаться раскрыть тайну того, что такое сокет, а также дать несколько советов о том, как работа с блокирующими и неблокирующими розетками.Но я начну с разговора о блокировка розеток. Вам нужно знать, как они работают, прежде чем начинать неблокирующие розетки.

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

История

Из различных форм МПК , розетки, безусловно, самые популярные. На любой платформе есть вероятно, будут другие формы IPC, которые быстрее, но для кроссплатформенное общение, сокеты - это почти единственная игра в городе.

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

Создание сокета

Грубо говоря, когда вы нажимали на ссылку, которая привела вас на эту страницу, ваш браузер сделал что-то вроде следующего:

 # создать INET, STREAMing сокет s = socket.socket (socket.AF_INET, socket.SOCK_STREAM) # теперь подключаемся к веб-серверу через порт 80 - обычный http порт s.connect (("www.python.org", 80)) 

Когда подключение завершается, сокет s может использоваться для отправки в запросе текста страницы.Тот же сокет будет читать ответить, а затем быть уничтоженным. Правильно, уничтожено. Клиентские сокеты обычно используются только для одного обмена (или небольшого набора последовательных обмены).

То, что происходит на веб-сервере, немного сложнее. Во-первых, веб-сервер создает «серверный сокет»:

 # создать INET, STREAMing сокет serversocket = socket.socket (socket.AF_INET, socket.SOCK_STREAM) # привязываем сокет к общедоступному хосту и известному порту serversocket.bind ((socket.gethostname (), 80)) # стать серверным сокетом серверный сокет.слушать (5) 

Следует отметить пару моментов: мы использовали socket.gethostname () , чтобы сокет будет видно внешнему миру. Если бы мы использовали s.bind (('localhost', 80)) или s.bind (('127.0.0.1', 80)) у нас все равно будет сокет «сервер», но тот, который был виден только внутри той же машины. s.bind (('', 80)) указывает, что сокет доступен по любому адресу, с которым встречается машина имеют.

Второе замечание: порты с небольшим номером обычно зарезервированы для «хорошо известных» сервисы (HTTP, SNMP и т. д.).Если вы играете, используйте хорошее большое число (4 цифры).

Наконец, аргумент listen сообщает библиотеке сокетов, что мы хотим, чтобы поставьте в очередь до 5 запросов на соединение (нормальный максимум), прежде чем отказывать извне соединения. Если остальная часть кода написана правильно, этого должно быть достаточно.

Теперь, когда у нас есть «серверный» сокет, прослушивающий порт 80, мы можем ввести основной цикл веб-сервера:

, пока True: # принимать подключения извне (клиентский сокет, адрес) = серверный сокет.accept () # теперь что-нибудь сделаем с клиентским сокетом # в данном случае мы представим, что это многопоточный сервер ct = client_thread (клиентский сокет) ct.run () 

На самом деле существует 3 основных способа работы этого цикла - отправка поток для обработки clientocket , создайте новый процесс для обработки clientocket , или реструктурируйте это приложение для использования неблокирующих сокетов, и мультиплексирование между нашим «серверным» сокетом и любым активным клиентским сокетом с использованием выберите .Подробнее об этом позже. Сейчас важно понять, это: это все «серверный» сокет. Он не отправляет никаких данных. Это не получать любые данные. Он просто производит «клиентские» сокеты. Каждому клиентскому сокету соответствует создается в ответ на , другой «клиентский» сокет, выполняющий connect () с хост и порт, к которым мы привязаны. Как только мы создали этот клиентский сокет , мы вернитесь к прослушиванию для получения дополнительных подключений. Два «клиента» могут свободно общаться в чате. вверх - они используют какой-то динамически выделенный порт, который будет переработан, когда разговор заканчивается.

МПК

Если вам нужен быстрый IPC между двумя процессами на одной машине, вам следует изучить каналы или разделяемая память. Если вы решили использовать сокеты AF_INET, привяжите Сокет «server» на «localhost» . На большинстве платформ это займет сократить несколько слоев сетевого кода и работать немного быстрее.

См. Также

Многопроцессорная модель интегрирует межплатформенные IPC в более высокий уровень API.

Использование розетки

Первое, на что следует обратить внимание, это то, что «клиентский» сокет веб-браузера и Интернет серверные «клиентские» сокеты такие же звери.То есть это «одноранговый» разговор. Или, другими словами, в качестве дизайнера вам придется решить, каковы правила этикета для разговора . Обычно connect ing socket начинает диалог, отправляя запрос, или возможно знак. Но это дизайнерское решение, а не розетки.

Теперь есть два набора глаголов, которые можно использовать для общения. Вы можете использовать отправить и recv , или вы можете превратить свой клиентский сокет в файлового зверя и используйте для чтения и для записи .Именно так Java представляет свои сокеты. Я не собираюсь здесь говорить об этом, но хочу предупредить, что вам нужно использовать заподлицо на розетки. Это буферизованные «файлы», и распространенной ошибкой является напишите что-нибудь, а затем прочтите для ответа. Без промывки дюймов там вы можете ждать ответа вечно, потому что запрос все еще может быть в ваш выходной буфер.

Теперь мы подошли к главному камню преткновения розеток - send и recv работают. в сетевых буферах.Они не обязательно обрабатывают все передаваемые вами байты их (или ожидайте от них), потому что их основное внимание уделяется работе с сетью буферы. Как правило, они возвращаются, когда связанные сетевые буферы были заполнены ( отправить ) или опустошены ( recv ). Затем они сообщают вам, сколько байтов они обработано. - это ваша ответственность - позвонить им еще раз, пока ваше сообщение не будет полностью разобрались.

Когда recv возвращает 0 байтов, это означает, что другая сторона закрыта (или находится в процесс закрытия) соединение.Вы больше не получите данных о это соединение. Когда-либо. Возможно, вы сможете успешно отправить данные; Я поговорю подробнее об этом позже.

Протокол, подобный HTTP, использует сокет только для одной передачи. Клиент отправляет запрос, затем читает ответ. Это оно. Сокет отбрасывается. Это значит, что клиент может определить конец ответа, получив 0 байтов.

Но если вы планируете повторно использовать розетку для дальнейших передач, вам необходимо что нет EOT на розетке. Повторюсь: если розетка отправить или recv возвращается после обработки 0 байтов, соединение было сломан. Если соединение , а не разорвано, вы можете подождать recv навсегда, потому что сокет , а не скажет вам, что больше нечего читать (пока). Если вы немного подумаете об этом, то поймете, что фундаментальная истина сокетов: сообщения должны иметь фиксированную длину (фу), или быть разделенными (пожать плечами), или указать длину (намного лучше), или заканчиваться отключение соединения .Выбор полностью за вами, но некоторые способы правее других).

Если вы не хотите разрывать соединение, самым простым решением является фиксированный длина сообщения:

 класс MySocket: "" "только демонстрационный класс - закодировано для ясности, а не эффективности "" " def __init __ (self, sock = None): если носок None: self.sock = socket.socket ( socket.AF_INET, socket.SOCK_STREAM) еще: self.sock = носок def connect (self, host, port): я.sock.connect ((хост, порт)) def mysend (self, msg): totalsent = 0 пока totalsent .

17,2. socket - низкоуровневый сетевой интерфейс - документация Python 2.7.18

Этот модуль обеспечивает доступ к интерфейсу BSD socket . Он доступен на все современные системы Unix, Windows, Mac OS X, BeOS, OS / 2 и, возможно, дополнительные платформы.

Примечание

Некоторое поведение может зависеть от платформы, так как звонки выполняются в операционную API системных сокетов.

Введение в программирование сокетов (на C) см. В следующих статьях: Вводный 4.Учебное пособие по межпроцессному взаимодействию 3BSD, Стюарт Сечрест и Расширенное руководство по межпроцессному взаимодействию 4.3BSD, Сэмюэл Дж. Леффлер и др. al, оба в Руководстве программиста UNIX, Дополнительные документы 1 (разделы PS1: 7 и PS1: 8). Справочные материалы по конкретной платформе для различных системные вызовы, связанные с сокетами, также являются ценным источником информации о детали семантики сокета. Для Unix см. Справочные страницы; для Windows, см. спецификацию WinSock (или Winsock 2).Для API, поддерживающих IPv6, читатели могут хочу сослаться на RFC 3493 , озаглавленный «Расширения базового интерфейса сокетов для IPv6».

Интерфейс Python представляет собой прямую транслитерацию системы Unix. вызов и интерфейс библиотеки для сокетов в объектно-ориентированном стиле Python: Функция socket () возвращает объект сокета , методы которого реализуют различные системные вызовы сокетов. Типы параметров несколько выше, чем в интерфейсе C: как с операциями read () и write () на Python файлы, распределение буфера при операциях приема выполняется автоматически, а длина буфера неявно используется в операциях отправки.

Адреса сокетов представлены следующим образом: одна строка используется для AF_UNIX семейство адресов. Пара (хост, порт) используется для AF_INET Семейство адресов , где host - строка, представляющая либо имя хоста в нотации домена Интернет, например 'daring.cwi.nl' или адрес IPv4 например, '100.50.200.5' , а порт является целым числом. За AF_INET6 семейство адресов, четыре кортежа (хост, порт, flowinfo, scopeid) , где flowinfo и scopeid представляет sin6_flowinfo и sin6_scope_id член в struct sockaddr_in6 в C.За socket методы модуля, flowinfo и scopeid могут быть опущены только для Обратная совместимость. Учтите, однако, что пропуск scopeid может вызвать проблемы. в манипулировании адресами IPv6 с заданной областью действия. Другие семейства адресов в настоящее время не поддерживается. Формат адреса, требуемый конкретным объектом сокета: автоматически выбирается на основе семейства адресов, указанного, когда сокет объект был создан.

Для адресов IPv4 используются две специальные формы вместо адреса хоста: пустая строка представляет INADDR_ANY , а строка '' представляет INADDR_BROADCAST .Поведение не доступен для IPv6 для обратной совместимости, поэтому вы можете избежать это, если вы собираетесь поддерживать IPv6 в своих программах Python.

Если вы используете имя хоста в части host адреса сокета IPv4 / v6, программа может показывать недетерминированное поведение, поскольку Python использует первый адрес вернулся из разрешения DNS. Адрес сокета будет разрешен по-разному в фактический адрес IPv4 / v6, в зависимости от результатов DNS разрешение и / или конфигурация хоста.Для детерминированного поведения используйте числовой адрес в части хоста .

Новое в версии 2.5: сокеты AF_NETLINK представлены парами pid, группами .

Новое в версии 2.6: поддержка TIPC только для Linux также доступна при использовании AF_TIPC адрес семьи. TIPC - это открытый сетевой протокол, не основанный на IP, разработанный для использования в кластерных компьютерных средах. Адреса представлены кортеж, а поля зависят от типа адреса.Общая форма кортежа (addr_type, v1, v2, v3 [, scope]) , где:

  • addr_type является одним из TIPC_ADDR_NAMESEQ , TIPC_ADDR_NAME , или TIPC_ADDR_ID .

  • область является одним из TIPC_ZONE_SCOPE , TIPC_CLUSTER_SCOPE , и TIPC_NODE_SCOPE .

  • Если addr_type - это TIPC_ADDR_NAME , то v1 - это тип сервера, v2 - это идентификатор порта, а v3 должен быть 0.

    Если addr_type - это TIPC_ADDR_NAMESEQ , то v1 - это тип сервера, v2 - это нижний номер порта, а v3 - это верхний номер порта.

    Если addr_type - это TIPC_ADDR_ID , то v1 - это узел, v2 - это ссылка, а v3 должно быть установлено на 0.

Все ошибки вызывают исключения. Обычные исключения для недопустимых типов аргументов и условия нехватки памяти могут быть повышены; ошибки, связанные с сокетом или адресом семантика вызывает ошибку socket.ошибка .

Неблокирующий режим поддерживается посредством setblocking () . А обобщение этого на основе тайм-аутов поддерживается через settimeout () .

Модуль socket экспортирует следующие константы и функции:

исключение сокет. ошибка

Это исключение возникает для ошибок, связанных с сокетом. Сопутствующая стоимость составляет либо строка, указывающая, что пошло не так, либо пара (errno, string) представляет ошибку, возвращаемую системным вызовом, аналогично значению сопровождающий os.ошибка . См. Модуль errno , который содержит имена для кодов ошибок, определенных базовой операционной системой.

исключение сокет. Геррор

Это исключение возникает для ошибок, связанных с адресом, т. Е. Для функций, которые используют h_errno в C API, включая gethostbyname_ex () и gethostbyaddr () .

Сопутствующее значение - пара (h_errno, строка) , представляющая ошибку возвращается вызовом библиотеки. строка представляет собой описание h_errno , как возвращается функцией hstrerror () C.

исключение сокет. гайеррор

Это исключение возникает для ошибок, связанных с адресом, для getaddrinfo () и getnameinfo () . Сопутствующее значение - пара (ошибка, строка) представляет ошибку, возвращенную вызовом библиотеки. строка представляет Описание ошибки , возвращенной функцией C. gai_strerror () C.В Ошибка Значение будет соответствовать одной из констант EAI_ * , определенных в этом модуль.

исключение сокет. таймаут

Это исключение возникает, когда тайм-аут происходит на сокете, который таймауты, разрешенные предыдущим вызовом settimeout () . Сопутствующее значение это строка, значение которой в настоящее время всегда «истекло время ожидания».

розетка. AF_UNIX
розетка. AF_INET
розетка. AF_INET6

Эти константы представляют семейства адресов (и протоколов), используемые для первый аргумент для socket () . Если константа AF_UNIX не является определено, то этот протокол не поддерживается.

розетка. SOCK_STREAM
розетка. SOCK_DGRAM
розетка. SOCK_RAW
розетка. SOCK_RDM
розетка. SOCK_SEQPACKET
.

Смотрите также