컴퓨터 네트워크 (HTTP TCP / IP)

6469 단어 컴퓨터 기반
글 목록
  • 네트워크 기반
  • HTTP & HTTPS
  • TCP/IP
  • DNS
  • URI 와 URL
  • HTTP 응답 상태 코드
  • 흔히 볼 수 있 는 문제
  • HTTP 발전 과정
  • 네트워크 기반
    랜 (LAN), 도 메 인 네트워크 (MAN), 광 역 네트워크 (WAN) : 별 네트워크, 버스 네트워크, 링 네트워크, 트 리 네트워크, 별 링 네트워크 등; : 쌍 교 선 망, 동 축 케이블 망, 광섬유 망 과 위성 망 등;통신 프로 토 콜 의 세 부분 구성: 의미 부분, 문법 부분, 변환 규칙;
    IP (Internet Protocol) 는 인터넷 프로 토 콜 이 라 고도 부 르 며 네트워크 간 의 상호 연결 을 지원 하 는 데이터 보고 프로 토 콜 입 니 다.IP 주 소 는 A, B, C, D, E 로 나 뉘 는데 각 유형의 네트워크 표지 와 호스트 표 지 는 각각 규칙 이 있다.IP 주 소 는 네트워크 의 통신 실 체 를 유일 하 게 표시 하 는 데 사용 되 지만 하나의 통신 실 체 는 여러 개의 통신 프로그램 이 동시에 네트워크 서 비 스 를 제공 할 수 있 기 때문에 이때 포트 도 사용 해 야 한다.
    포트 는 16 비트 의 정수 이다.0~65535
  • 공인 포트: 0 ~ 1023, 특정한 서 비 스 를 긴밀 하 게 연결 합 니 다.
  • 등록 포트: 1024 ~ 49151, 일부 서 비 스 를 느슨하게 연결 합 니 다.
  • 동적 및 / 또는 개인 포트: 49152 ~ 65535
  • OSI (Open System Interconnect) 개방 시스템 상호 연결 참조 모델 计算机网络(HTTP TCP/IP)_第1张图片
    HTTP & HTTPS
    HTTP (HyperText Transfer Protocol, 하이퍼텍스트 전송 프로 토 콜) 프로 토 콜 은 TCP 기반 응용 층 프로 토 콜 로 데이터 전송의 세부 사항 에 관심 이 없고 클 라 이언 트 와 서버 의 데이터 전송 형식 을 규정 하 는 데 사용 된다.
    HTTPS - HTTP 프로 토 콜 의 데이터 전송 은 명문 이 고 안전 하지 않 습 니 다. HTTPS 는 SSL/TLS 프로 토 콜 을 사용 하여 암호 화 처 리 를 했 습 니 다.HTTPS 프로 토 콜 의 주요 역할 은 두 가지 로 나 뉜 다. 하 나 는 정보 안전 통 로 를 구축 하여 데이터 전송 의 안전 을 확보 하 는 것 이다.다른 하 나 는 사이트 의 진실성 을 확인 하 는 것 이다.
    HTTP 와 HTTPS 의 차이
  • https 프로 토 콜 은 CA 에서 인증 서 를 신청 해 야 합 니 다.
  • HTTP 프로 토 콜 은 TCP 에서 실 행 됩 니 다. 모든 전송 내용 은 명문 이 고 HTTPS 는 SSL / TLS 에서 실 행 됩 니 다. SSL / TLS 는 TCP 에서 실 행 됩 니 다. 모든 전송 내용 은 암호 화 됩 니 다.
  • 서로 다른 연결 방식 을 사용 하고 포트 가 다 르 며 http 는 80 이 고 https 는 443 이다.
  • HTTPS 는 운영 업 체 의 납 치 를 효과적으로 방지 하고 납 치 를 방지 하 는 큰 문 제 를 해결 했다.

  • TCP/IP
    TCP / IP 프로 토 콜 족 에서 중요 한 것 은 층 을 나 누 는 것 이다.
    IP IP 간 통신 은 MAC 주소 에 의존 합 니 다.네트워크 상에 서 통신 하 는 쌍방 이 같은 랜 (LAN) 내 에 있 는 경 우 는 매우 적 으 며, 일반적으로 여러 대의 컴퓨터 와 네트워크 장 치 를 거 쳐 야 상대방 에 게 연결 할 수 있다.중간 전환 을 진행 할 때 다음 중간 장치 의 MAC 주 소 를 이용 하여 다음 중간 대상 을 검색 합 니 다.이 때 ARP 프로 토 콜 (Address Resolution Protocol) 을 사용 합 니 다.ARP 는 주소 분석 을 위 한 프로 토 콜 로, 통신 측의 IP 주소 에 따라 대응 하 는 MAC 주 소 를 역 검색 할 수 있다.
    TCP 전송 제어 프로 토 콜 (TCP, Transmission Control Protocol) 은 연결 되 고 신뢰 할 수 있 으 며 바이트 흐름 을 기반 으로 하 는 전송 계층 통신 프로 토 콜 입 니 다.계층 별로 TCP 는 전송 층 에 위치 하여 신뢰 할 수 있 는 바이트 흐름 서 비 스 를 제공 합 니 다.TCP 프로 토 콜 은 데 이 터 를 목표 에 정확하게 전달 하기 위해 세 번 의 악수 (three - way handshaking) 전략 을 채택 했다.악수 과정 에서 TCP 로고 (flag) - SYN (synchronize) 와 ACK (acknowledgement) 를 사용 했다.
    TCP 연결 (세 번 악수)
  • 클 라 이언 트 가 SYN (SYN = j) 로고 의 패 킷 을 서버 에 보 내 고 SYN 에 들 어 갑 니 다.SEND 상태, 서버 확인 대기.
  • 서버 에서 SYN 패 키 지 를 받 으 면 클 라 이언 트 의 SYN (ACK = j + 1) 을 확인 하고 자신 도 SYN 패키지 (SYN = k), 즉 SYN + ACK 패 키 지 를 보 내야 합 니 다. 이때 서버 B 는 SYN 에 들 어 갑 니 다.RECV 상태.
  • 클 라 이언 트 는 서버 의 SYN + ACK 패 키 지 를 받 아 서버 에 확인 패키지 ACK (ACK = k + 1) 를 보 냅 니 다. 이 패 키 지 는 발송 이 완료 되 었 고 클 라 이언 트 와 서버 는 ESTABLISHED 상태 에 들 어가 세 번 의 악 수 를 마 쳤 습 니 다.

  • TCP 차단 (악수 네 번)
  • 클 라 이언 트 가 FIN 메 시 지 를 보 냅 니 다. seq = u (u 는 현재 메시지 시리 얼 번호 입 니 다. FIN 메시지 도 시리 얼 번 호 를 한 번 소모 해 야 하기 때 문 입 니 다), 상태: FIN - WAIT - 1
  • 서버 는 FIN 메 시 지 를 받 고 ACK 메 시 지 를 답장 하고 현재 메시지 시리 얼 번 호 를 가 져 오 며 다른 메시지 가 전 송 될 때 까지 기 다 립 니 다. 상태: CLOSE - WAIT.Client ACK 소식, 상태: FIN - WAIT - 2
  • 서버 의 다른 메 시 지 를 보 냈 습 니 다. FIN 메 시 지 를 보 내 고 현재 시리 얼 번 호 를 가 져 옵 니 다. (서버 가 얼마나 많은 메 시 지 를 보 냈 는 지 확실 하지 않 기 때문에 w 를 가정 합 니 다) 상태: LAST - ACK.
  • Client 는 FIN 소식 을 받 고 ACK 소식 에 답 하고 TIME - WAIT 상태 에 들 어 갔다.서버 가 ACK 메 시 지 를 받 았 습 니 다. 상태: 종료
  • DNS
    DNS (Domain Name System) 서 비 스 는 HTTP 프로 토 콜 과 마찬가지 로 응용 층 에 있 는 프로 토 콜 입 니 다.도 메 인 이름 에서 IP 주소 사이 의 분석 서 비 스 를 제공 합 니 다.
    URI 와 URL
    URI (Uniform Resource Identifier, 자원 식별 자 통일) URL (Uniform Resource Locator, 자원 포 지 셔 닝 문자 통일)
    HTTP 응답 상태 코드
    세 자리 숫자 에 원인 구 를 첨가 하 다.세 자리 숫자 중 첫 번 째 는 상태의 분 류 를 지정 하 는 데 총 5 가지 입 니 다.
  • 1xx - 정보 상태 코드 - 받 은 요청 이 처리 중
  • 2xx - 성공 상태 코드 - 정상 처리 요청 완료
  • 3xx - 리 셋 상태 코드 - 요청 을 완료 하기 위해 추가 작업 이 필요 합 니 다
  • 4xx - 클 라 이언 트 오류 상태 코드 - 서버 에서 요청 을 처리 할 수 없습니다
  • 5xx - 서버 오류 상태 코드 - 서버 처리 요청 오류
  • 200:OK 204:No Content 400:Bad Request 404:Not Found
    흔 한 문제
    HTTP 네트워크 요청 에 영향 을 주 는 요 소 는 주로 두 가지 가 있 습 니 다. 대역 폭 과 지연 입 니 다.
    왜 연결 할 때 는 세 번 악 수 를 하고 닫 을 때 는 네 번 악 수 를 합 니까?서버 측 에서 클 라 이언 트 측의 SYN 연결 요청 메 시 지 를 받 으 면 SYN + ACK 메 시 지 를 직접 보 낼 수 있 기 때문이다.그 중에서 도 ACK 메 시 지 는 응답 용 이 었 고 SYN 메 시 지 는 동기 화 용 이 었 다.그러나 연결 을 닫 을 때 서버 측 에서 FIN 메 시 지 를 받 았 을 때 SOCKET 을 바로 닫 지 않 을 가능성 이 높 기 때문에 먼저 ACK 메시지 에 답 해 클 라 이언 트 측 에 "당신 이 보 낸 FIN 메 시 지 를 받 았 습 니 다" 라 고 알려 야 합 니 다.내 서버 의 모든 메 시 지 를 다 보 낼 때 까지 기 다 려 야 나 는 FIN 메 시 지 를 보 낼 수 있 기 때문에 함께 보 낼 수 없다.그래서 네 걸음 악수 가 필요 하 다.
    연결 이 되 어 있 는데 클 라 이언 트 가 갑자기 고장 나 면 어떻게 합 니까?TCP 에는 활성 타이머 도 설치 되 어 있 는데 클 라 이언 트 가 고장 이 나 면 서버 가 계속 기다 릴 수 없고 자원 을 헛되이 낭비 할 수 없다.서버 는 클 라 이언 트 의 요청 을 받 을 때마다 이 타 이 머 를 다시 복원 합 니 다. 시간 은 보통 2 시간 으로 설정 되 어 있 습 니 다. 만약 에 두 시간 동안 클 라 이언 트 의 데 이 터 를 받 지 못 하면 서버 는 탐측 메시지 세그먼트 를 보 내 고 이후 75 초 마다 보 냅 니 다.10 개의 탐지 메 시 지 를 계속 보 내 도 반응 이 없 으 면 서버 는 클 라 이언 트 가 고장 이 났 다 고 생각 하고 연결 을 닫 습 니 다.
    HTTP 발전 과정
    HTTP / 2.0 2015 바 이 너 리 전송 다 중 재 활용 다 중 재 활용 은 단일 HTTP / 2 연결 을 통 해 다 중 요청 - 응답 메 시 지 를 동시에 시작 할 수 있 습 니 다.Header 압축 HTTP 1.0 에서 저 희 는 텍스트 형식 으로 header 를 전송 합 니 다. header 에 쿠키 를 가지 고 있 으 면 매번 수백 에서 수천 개의 바이트 를 반복 해서 전송 해 야 합 니 다. 이것 은 정말 적지 않 은 비용 입 니 다.HTTP 2.0 에서 저 희 는 HPACK (HTTP 2 헤더 압축 알고리즘) 압축 형식 을 사용 하여 전 송 된 header 를 인 코딩 하여 header 의 크기 를 줄 였 습 니 다.또한 양 끝 에 색인 표를 유지 하여 나타 난 header 를 기록 하 는 데 사 용 됩 니 다. 그 다음 에 전송 과정 에서 기 록 된 header 의 키 이름 을 전송 할 수 있 습 니 다. 단 에 데 이 터 를 받 으 면 키 이름 을 통 해 해당 하 는 값 을 찾 을 수 있 습 니 다.
    HTTP / 1.1 1997 년 1 월 에 HTTP / 1.1 을 발표 했다.무상 태 프로 토 콜 이지 만 원 하 는 상태 유지 기능 을 구현 하기 위해 쿠키 기술 을 도입 했다.
  • 캐 시 처리
  • 대역 폭 최적화 및 네트워크 연결 의 사용
  • 오류 알림 관리
  • 호스트 헤드 처리
  • 긴 연결, HTTP 1.1 은 긴 연결 (PersistentConnection) 과 요청 한 파이프라인 (Pipeling) 처 리 를 지원 합 니 다. 한 TCP 연결 에서 여러 개의 HTTP 요청 과 응답 을 전송 할 수 있 고 연결 구축 과 닫 기 소모 와 지연 을 줄 일 수 있 습 니 다. HTTP 1.1 에 서 는 기본적으로 연결: keep - alive 를 엽 니 다.HTTP 1.0 이 요청 할 때마다 연결 을 만들어 야 한 다 는 단점 을 어느 정도 보완 했다.

  • HTTP / 1.0 HTTP 가 정식으로 표준 으로 발 표 된 것 은 1996 년 5 월 이 며 버 전 은 HTTP / 1.0 이 라 고 명명 되 었 다.

    좋은 웹페이지 즐겨찾기