Optymalizacja czasu połączenia (TCP + TLS) w ramach Time to First Byte

Czas połączenia w TTFB składa się z ustanowienia połączenia TCP i TLS. Zrozum tę część TTFB, aby skrócić całkowity czas do pierwszego bajtu

Arjen Karel Core Web Vitals Consultant
Arjen Karel - linkedin
Last update: 2026-02-21

Optymalizacja czasu połączenia (TCP + TLS) w ramach Time to First Byte

Time to First Byte (TTFB) można podzielić na następujące części:

  • Oczekiwanie + przekierowanie (czas oczekiwania)
  • Worker + Cache (czas cache)
  • DNS (czas DNS)
  • Połączenie (czas połączenia)
  • Żądanie (czas żądania)

Chcesz zoptymalizować Time to First byte? Ten artykuł zawiera szczegółową analizę części czasu DNS w Time to First Byte. Jeśli chcesz zrozumieć lub naprawić time to first byte i nie wiesz, co oznacza czas oczekiwania, przeczytaj czym jest time to first byte oraz napraw i zidentyfikuj problemy z time to first byte zanim rozpoczniesz lekturę tego artykułu

Część czasu połączenia w time to first byte składa się z czasu, w którym przeglądarka łączy się z serwerem. Po nawiązaniu połączenia przeglądarka i serwer zwykle dodają warstwę szyfrowania (TLS). Proces negocjacji tych 2 połączeń zajmuje trochę czasu, który jest dodawany do Time to First Byte.


Proces połączenia szczegółowo

Transmission Control Protocol (TCP) jest odpowiedzialny za ustanowienie niezawodnego połączenia między klientem (przeglądarką) a serwerem. Proces ten obejmuje trójstronny uścisk dłoni:

tcp 3 way handshake

  • Pakiet SYN (Synchronize): Klient wysyła pakiet SYN do serwera, aby zainicjować połączenie i poprosić o synchronizację.
  • Pakiet SYN-ACK (Synchronize-Acknowledge): Serwer odpowiada pakietem SYN-ACK, potwierdzając otrzymanie pakietu SYN i zgadzając się na nawiązanie połączenia.
  • Pakiet ACK (Acknowledge): Klient wysyła pakiet ACK z powrotem do serwera, potwierdzając otrzymanie pakietu SYN-ACK. W tym momencie połączenie TCP jest ustanowione, umożliwiając niezawodny transfer danych między klientem a serwerem.

TCP zapewnia, że dane są wysyłane i odbierane we właściwej kolejności, ponownie wysyłając wszelkie utracone pakiety i zarządzając kontrolą przepływu, aby dostosować się do pojemności sieci.

Po ustanowieniu połączenia TCP, protokół Transport Layer Security (TLS) jest używany do zabezpieczenia połączenia. Uścisk dłoni TLS obejmuje kilka kroków w celu uwierzytelnienia serwera i ustanowienia bezpiecznego kanału komunikacji:

  • ClientHello: Klient wysyła wiadomość "ClientHello" do serwera, wskazując obsługiwane wersje TLS, zestawy szyfrów i liczbę losową (Client Random).
  • ServerHello: Serwer odpowiada wiadomością "ServerHello", wybierając wersję TLS i zestaw szyfrów z listy klienta oraz przekazując swój certyfikat cyfrowy i liczbę losową (Server Random).
  • Certyfikat i wymiana klucza: Serwer wysyła swój certyfikat cyfrowy do klienta w celu uwierzytelnienia. Klient weryfikuje certyfikat względem zaufanych urzędów certyfikacji.
  • Premaster Secret: Klient generuje premaster secret, szyfruje go kluczem publicznym serwera (z certyfikatu) i wysyła do serwera.
  • Generowanie klucza sesji: Zarówno klient, jak i serwer używają premaster secret wraz z Client Random i Server Random do wygenerowania wspólnego klucza sesji do szyfrowania symetrycznego.
  • Wiadomości Finished: Klient i serwer wymieniają wiadomości zaszyfrowane kluczem sesji, aby potwierdzić, że uścisk dłoni zakończył się pomyślnie i że obie strony mają prawidłowy klucz sesji.

Po zakończeniu uścisku dłoni TLS klient i serwer mają ustanowione bezpieczne, zaszyfrowane połączenie. Zapewnia to, że wszelkie wymieniane dane są chronione przed podsłuchiwaniem i manipulacją przez osoby trzecie.

HTTP/3 przyspiesza połączenia TLS, integrując się z protokołem QUIC, który zmniejsza liczbę wymaganych podróży w obie strony do ustanowienia bezpiecznego połączenia, łącząc procesy uścisku dłoni w jeden, i obsługuje wznowienie 0-RTT dla szybszych ponownych połączeń. Dodatkowo wykorzystanie UDP przez QUIC eliminuje blokowanie na początku kolejki i poprawia kontrolę przeciążenia, prowadząc do bardziej efektywnej transmisji danych i szybszego ładowania stron.

Jak czas połączenia wpływa na Time to first byte?
Protokoły TCP i TLS wpływają na Time to First Byte (TTFB), wprowadzając opóźnienia i obciążenie obliczeniowe podczas początkowej konfiguracji połączenia. Połączenie TCP wymaga trójstronnego uścisku dłoni, aby ustanowić niezawodne połączenie, co dodaje opóźnienia związane z czasem podróży w obie strony. Uścisk dłoni TLS, niezbędny do zabezpieczenia połączenia, dodaje dodatkowe podróże w obie strony w celu negocjacji parametrów szyfrowania i weryfikacji certyfikatów. 

Ten łączny proces może wprowadzić rzeczywiste opóźnienia do TTFB, szczególnie jeśli warunki sieciowe nie są optymalne lub jeśli używane są starsze wersje TLS (które wymagają więcej podróży w obie strony w porównaniu z nowszymi wersjami jak TLS 1.3)

Jak zminimalizować wpływ czasu połączenia na TTFB

Aby zminimalizować wpływ czasu połączenia na TTFB, najlepszym rozwiązaniem jest skonfigurowanie serwera www do korzystania z najnowszych technologii, takich jak http/3 i TLS 1.3. Upewnij się również, że serwer www znajduje się geograficznie blisko Twoich odwiedzających, ponieważ czas połączenia wymaga wielu podróży w obie strony, a fizyczna odległość do serwera również wpływa na czas połączenia. Dla witryn z globalną publicznością CDN jest jedynym sposobem na zapewnienie krótkich czasów podróży w obie strony.

Podczas optymalizacji ustawień serwera są to ustawienia, które można włączyć lub skonfigurować, aby przyspieszyć czas połączenia:

  • HTTP/3wprowadza protokół QUIC przez UDP zamiast TCP, umożliwiając szybszy i bardziej efektywny transfer danych
  • TLS 1.3 Dodaje więcej bezpieczeństwa i zmniejsza liczbę podróży w obie strony podczas uścisku dłoni, jest wymagany do wznowienia połączenia 0-RTT. 
  • Wznowienie połączenia 0-RTT - Funkcja TLS 1.3, która pozwala powracającym klientom natychmiast wysyłać zaszyfrowane dane po ponownym połączeniu, wykorzystując wcześniej wymienione informacje.
  • TCP Fast Open. Umożliwia wysyłanie danych w początkowym pakiecie SYN, skracając czas podróży w obie strony dla uścisku dłoni TCP.
  • TLS false start - Pozwala na wczesne wysyłanie danych przed zakończeniem uścisku dłoni TLS.
  • OCSP Stapling -  Przyspiesza walidację certyfikatu eliminując potrzebę kontaktowania się klienta bezpośrednio z urzędem certyfikacji

Wskazówka dotycząca Time to Fist Byte: CDN nie tylko zapewnia krótsze czasy podróży w obie strony. Wykorzystanie CDN często natychmiast poprawi czasy połączeń TCP i TLS, ponieważ dostawcy premium CDN będą mieli poprawnie skonfigurowane te ustawienia dla Ciebie!

Jak znaleźć problemy z TTFB spowodowane powolnym czasem połączenia

Aby znaleźć wpływ, którego doświadczają prawdziwi użytkownicy spowodowany przekierowaniem, będziesz potrzebować narzędzia RUM, takiego jak CoreDash. Real user monitoring pozwoli śledzić Core Web Vitals z większą szczegółowością i bez 28-dniowego opóźnienia Google.

CoreDash po prostu "kliknij na rozbicie Time to Fist Byte", aby zwizualizować część połączenia w Time to First Byte.  

ttfb dns coredash breakdown

Make decisions with Data.

You cannot optimize what you do not measure. Install the CoreDash pixel and capture 100% of user experiences.

Create Free Account >>

  • 100% Capture
  • Data Driven
  • Easy Install
Optymalizacja czasu połączenia (TCP + TLS) w ramach Time to First ByteCore Web Vitals Optymalizacja czasu połączenia (TCP + TLS) w ramach Time to First Byte