@rudepython

Страница 443 из 1719
Alexey
14.06.2017
14:28:07
Главное, чтобы вообще без предоплаты.

Ilgiz
14.06.2017
14:28:16


с какой книги?

Eugine
14.06.2017
14:29:32
"Идеализм в чистом виде" от какой-нибудь феминистки

Google
dmks
14.06.2017
14:30:06
с какой книги?
Мартин, чистый код

А в гугле забанили?

Ilgiz
14.06.2017
14:30:20
какое предложение ты гуглил?

dmks
14.06.2017
14:31:57
http://bfy.tw/CMgv

Alexey
15.06.2017
05:39:49
8)

Milton
15.06.2017
05:40:59
8)
На тебя кавер сделали

Alexey
15.06.2017
05:41:12
Trial version!

Eugine
15.06.2017
07:40:12
Каверин
15.06.2017
09:07:38
а почему на меня

Eugine
15.06.2017
09:08:35
шутка фейлд. всем спасибо, все свободны

Alexey
15.06.2017
09:10:18
Лево руля.

Google
Ilgiz
15.06.2017
15:02:08
Ребят у меня тут вопрос по поводу TCP, IP, HTTP можно задам? хотел спросить правильно ли я понял и взаимосвязи или нет

Alexey
15.06.2017
15:02:19
Это уже вопрос. :)

Ilgiz
15.06.2017
15:10:17
Получается при запросе на url, запрос уходить в таком порядке, заполняем пакет данных для IP протокола и в этом пакете можем еще указать пакет данных другого протокола например TCP. Получается IP работает повверх TCP?

Zart
15.06.2017
15:10:30
щито

это ты ща телегу впереди лошади сунул? да еще и смешал в кучу урлы и л3 протокол

Ilgiz
15.06.2017
15:11:26
просто я не могу понят как IP и TCP вместе работают

Zart
15.06.2017
15:11:46
положим у тебя есть типичный код на питон с реквестс data = requests.get(url).content

сперва урл разбирается на части, чтобы определить протокол, хост и прочая

положим у нас обычный http (7й уровень модели оси, приложения) хост скажем localhost нам надо подключиться к нему и сделать хттп запрос

сперва на адрес вызывается штатный системный ресолвер, для ответа на "какой адрес у "локалхост"?" вопрос

тот с помощью разных способов транслирует его в айпишник 127.0.0.1, например

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

для тцп сперва происходит обмен туда-сюда в несколько пакетов (4-way handshake) чтобы начать сессию, после чего приложение может писать данные в сокет на верхнем уровне создается посылка в виде хттп запроса GET /path?query HTTP/1.1 Host: localhost User-Agent: python... ... который заполняется в пакеты аналогично процессу выше

после чего этот пакет улетает через езернет/вайфай/туннели/прочая (2й уровень оси, канальный, плюс 1й - физический)

IP-пакеты данных содержат адреса откуда и кому, плюс какой протокол вложен внутри TCP-пакеты соответственно имеют уже айпишный заголок и добавляют инфу о портах + данные

Ilgiz
15.06.2017
15:24:56
какой протокол может быть вложен внтури пакета IP?

Zart
15.06.2017
15:25:09
TCP протокол может быть вложен как в IPv4, так и в IPv6 заголовки

какой протокол может быть вложен внтури пакета IP?
примеры - https://en.wikipedia.org/wiki/Transport_layer#Protocols

Ilgiz
15.06.2017
15:44:45
получается TCP проверять сперва все ли нормально на хосте locahost (4-way handshake) потом только заполняются пакеты для IP внутри которого будет вложен пакет TCP, потом создается http запрос?

Google
Zart
15.06.2017
15:45:27
как вообще можно до такого вывода додуматься

Zart
15.06.2017
15:46:41
да

Zart
15.06.2017
15:49:33
это между обоими летается

твой хост отправляет пакеты, удаленный присылает тцп пакеты в ответ

Ilgiz
15.06.2017
15:55:14
ты говориш что присылает tcp пакеты, как тогда в ip пакете вложен TCP пакет, если приходит tcp пакеты

как я вижу сейчас запрос (1(2(?4(5(6(7))))))) номер это уровни OSI

Zart
15.06.2017
15:56:00
тцп пакета без айпи не существует

Ilgiz
15.06.2017
15:56:04
блин смайлик

Zart
15.06.2017
15:56:21
5 и 6 тут не участвует никак

Ilgiz
15.06.2017
15:56:55
тцп пакета без айпи не существует
получается внтури tcp пакеты вложен iP пакет?

Stanislav
15.06.2017
15:57:21
Zart
15.06.2017
15:57:22
наоборот

иди читай книжки по протоколам и сокетам

там картинки и таблички наглядные есть

Ilgiz
15.06.2017
15:59:27
окей, последний еще вопрос, данные http запроса внутри пакета TCP?

или http запрос уходит после того как успешно прошел tcp запрос

Zart
15.06.2017
16:02:15
внутри

причем вполне могут быть разбиты на пачку тцп пакетов

Google
Ilgiz
15.06.2017
16:03:05
то есть данные http запросе head и прочее внутри пакета tcp?

Zart
15.06.2017
16:03:35
да

Ilgiz
15.06.2017
16:04:15
в каком поле?

Zart
15.06.2017
16:05:04
хттп технически существует не только поверх тцп в длна хттп запросы пакуются в удп пакеты есть экспериментальные сборки апача и файрфокса с сцтп транспортом в виндовом WS хттп запросы летают и через неймед пайпы с очередями

Ilgiz
15.06.2017
16:05:36
то есть вот тут (4-way handshake) происходит обмен данными внтури которого есть так же http данные?

нет

это просто соединение оказывается

Zart
15.06.2017
16:09:09
нет, это еще до обмена

там флаги используются

dmks
15.06.2017
16:20:45
Лол

я открыл ишьюсы у репозитория

Zart
15.06.2017
22:01:36
чота я в этих сраных докерах совсем запутался

в чем разница между runc и oci рантаймами, почему это, блядь, нигде не документировано, и что из них дефолт?

что делает containerd...

Zart
15.06.2017
22:03:29
стандарты чего и как это отличается на практике?

Eugine
15.06.2017
22:04:39
почитал и пришел к выводу, что попутал, наверное

все крутится вокруг OCI

Google
Eugine
15.06.2017
22:05:07
https://github.com/opencontainers/image-spec/blob/master/spec.md

> This specification defines an OCI Image, consisting of a manifest, an image index (optional), a set of filesystem layers, and a configuration. однозначное задание внутренностей контейнера

runC это реализация этого дерьма

как и containerd

обе хуйни умеют запускать/формировать и поддерживать это говно

собственно docker это обвязка над containerd, вроде

Zart
15.06.2017
22:07:53
[root@ene ~]# docker info Containers: 0 Running: 0 ... Swarm: inactive Runtimes: oci runc Default Runtime: oci Security Options: seccomp selinux ...

Eugine
15.06.2017
22:08:19
> containerd currently has two active branches. There is a v0.2.x branch for the current release of containerd that is being consumed by Docker and others

значит docker имеет под собой возможность использовать обе эти хуйни

> runC is built on libcontainer, the same container technology powering millions of Docker Engine installations.

Zart
15.06.2017
22:09:18
ExecStart=/usr/bin/dockerd-latest \ --add-runtime oci=/usr/libexec/docker/docker-runc-latest \ --default-runtime=oci \ --containerd /run/containerd.sock \ --exec-opt native.cgroupdriver=systemd \ --userland-proxy-path=/usr/libexec/docker/docker-proxy-latest \ -g /var/lib/docker-latest \ $OPTIONS \ $DOCKER_STORAGE_OPTIONS \ $DOCKER_NETWORK_OPTIONS \ $ADD_REGISTRY \ $BLOCK_REGISTRY \ $INSECURE_REGISTRY т.е. я вижу что ключами добавлен оци рантайм и сделан дефолтом при этом в документации на докер адд-рантайм ключ описан (куцо-куцо) а дефолт-рантайм ключа нет

докер ран принимает —рантайм ключ, но это недокументировано, и попытки заюзать runc не пашут

да, у меня крутятся два демона - докерд и контейнерд

Zart
15.06.2017
22:10:31
нихуя неясно как они между собой работу делят

Страница 443 из 1719