hyeonga_code

Java_70_네트워크 본문

Java

Java_70_네트워크

hyeonga 2023. 10. 28. 05:59
반응형


- 네트워크
    - 다른 장치로 데이터를 이동시킬 수 있는 컴퓨터, 주변 장치들의 집합
    - 노드 : 연결된 모든 장치
    - 호스트 : 다른 노드에게 하나 이상의 서비스를 해주는 노드
    - OSI 계층 모델
        - 7계층으로 구성
    - 주로 TCP/IP 계층 모델을 사용합니다.

- 인터넷 주소_IP 주소
    - 32비트 숫자로 구성된 주소 체계로 구분합니다.
    - 8비트씩 끊어 표현합니다.
    - 1자리당 1바이트 0-255
        - 최대 253대를 연결할 수 있습니다.
        - 255 게이트웨이
    - 32비트의 주소 체계를 IP버전 4_IPv4라고 합니다.
    - IPv6 : 128 비트의 주소 체계를 관리합니다.
        - 16비트씩 8부분으로 나누어 16진수로 표시합니다.
    - 0번 : 네트워크 아이디
    - 1번 : 통신사?
    - 서브네팅
        255.255.255.0 이었는데
        마지막 0 을 224로 변경
        255.255.255.224
        000 0 0000
        001 0 0000
        010 0 0000
        011 0 0000
        100 0 0000
        101 0 0000
        110 0 0000
        111 0 0000  > 뒤 5자리 > 32대 공유 가능

        255.255.252
        0000 00 00
        0000 00 01
        0000 00 10
        0000 00 11 > 앞 6자리 > 주소가 됩니다.

- 포트
    - 물리적 포트
        - 컴퓨터의 주변 장치에 접속하기 위한 포트
    - 논리적 포트
        - 프로그램에서 사용되는 접속 장소
        - 잘 알려진 포트
            - 인터넷 번호 할당 허가 위원회_IANA에 의해 예약된 포트 번호를 부여
            - 80_HTTP
            - 21_FTP
            - 22_SSH
            - 23_TELNET
        - 포트 번호 : 0 - 65535
        - 시스템용 포트 번호 : 0 - 1023    

- 프로토콜
    - 클라이언트와 서버간의 통신 규약
    - 통신 규약에 정의되는 것
        - 상호 간의 접속
        - 절단 방식
        - 통신 방식
        - 주고 받을 데이터의 형식
        - 오류 검출 방식
        - 코드 변환 방식
        - 전송 속도
    - 대표적인 인터넷 표준 프로토콜
        - TCP
            - 연결 방식
                - 연결 기반
                - 연결 후 통신
                - 1:1 통신
            - 특징
                - 데이터의 경계를 구분하지 않음
                - 신뢰성 있는 데이터 전송
                - 데이터의 전송 순서가 보장됨
                - 데이터의 수신 여부를 확인
                - 손실된 경우 재전송
                - 패킷 관리 필요 없음
                - 속도 느림
            - 관련 Class
                - Socket
                - ServerSocket
        - UDP
            - 연결 방식
                - 비연결 기반
                - 연결 없이 통신
                - 1:1, 1:n, n:m
            - 특징
                - 데이터의 경계를 구분
                - 신뢰성 없는 데이터 전송
                - 전송 순서 변경될 수 있음
                - 데이터의 손실 여부 확인 안함
                - 패킷 관리 필수
                - 속도 빠름
            - 관련 Class
                - DatagramSocket
                - DatagramPacket
                - MulticastSocket
    - TCP/TP
        - 4계층 구조
            - 애플리케이션
                - FTP
                - SMTP
                - HTTP
            - 전송
                - TCP
                - UDP
            - 네트워크
                - IP
                - ARP
            - 데이터 링크
        

    - InetAddress

    - URL

    - URLConnection

    - Socket

    - ServerSocket
        - TCP 서버 소켓
        - 클라이언트의 TCP 연결을 받기 위해 java.net.ServerSocket 클래스 객체 생성 필요
        - accept() : 클라이언트의 TCP 요청이 있을 때까지 블로킹

반응형

'Java' 카테고리의 다른 글

Java_마방진 코드 작성하기  (0) 2023.10.28
Java_주민 번호 인증 확인 코드 작성  (0) 2023.10.28
Java_69_Assertion_단언  (0) 2023.10.27
Java_68_Collection_List  (0) 2023.10.27
Java_67_Collection_Map  (0) 2023.10.27