분류 전체보기

CS/네트워크

[네트워크]전송 계층: 신뢰할 수 있는 데이터 전송하기

I.전송 계층의 역할 1.전송 계층의 두 가지 역할 물리계층, 데이터 링크 계층 네트워크 계층의 3계층이 있으면 목적지에 데이터를 보낼 수 있다. 하지만 중간에 데이터가 손상되거나 유실되더라도 3계층은 이를 해결 해주지 않는다. 이를 해결하기 위해 전송계층이 필요하다. 전송 계층은 목적지에 신뢰할 수 있는 데이터를 전달 한다. 데이터를 제대로 전달하기 위해 두 가지 기능을 하는데 첫 번째로 전송 계층에서는 오류를 점검하는 기능을 한다. 만약 오류가 발생하면, 데이터를 재전송하도록 요청한다. 네트워크 계층은 목적지까지 데이터를 전달하고 전송 계층은 데이터가 제대로 도착 했는지 확인한다고 할 수 있다. 전송 계층은 두 번째 기능은 전송된 데이터의 목적지가 어떤 애플리케이션인지 식별한다. 만약 컴퓨터가 데이터..

카테고리 없음

[배열] 연습문제 5-6

5-6.단어의 글자위치를 섞어서 보여주고 원래의 단어를 맞추는 예제이다. 실행결과와 같이 동작하도록 예제의 빈 곳을 채우시오. import java.utill.Scanner; class Excercise5_6 { public static void main(String args[]) { String[] words = { "television", "computer", "mouse", "phone" }; Scanner scanner = new Scanner(System.in); for(int i = 0; i ", i+1, ne..

CS/네트워크

[네트워크]네트워크 계층: 목적지에 데이터 전달하기

I.네트워크 계층의 역할 데이터 링크 계층에서는 같은 네트워크안에서 '이더넷'이라는 규칙으로 데이터를 전송했다. 하지만 이더넷만으로는 인터넷이나 다른 네트워크로 데이터를 보내는 건 불가능하다. 네트워크 계층은 '서로 다른 네트워크에 있는 목적지로 데이터를 전송'한다. 이더넷 대신 라우터라는 네트워크 장비를 사용하여 네트워크 간에 데이터를 전송시킨다. 하지만 라우터만으론 목적지가 어딘지 알 수 없다. 목적지를 랜에서는 MAC주소를 통해 통신했지만 다른 네트워크에는 통신이 불가능했다. IP주소는 네트워크를 식별해주는 기능을 하여 이 문제를 해결한다. IP주소는 어떤 네트워크의 어떤 컴퓨터인지 구분하는 주소다. IP주소는 목적지를 어디로 보낼지도 결정하지만 목적지까지 최적의 경로가 어디인지 결정한다. 최적의 ..

CS/네트워크

[네트워크]데이터 링크 계층: 랜에서 데이터 전송하기

I.데이터 링크 계층의 역할과 이더넷 1.이더넷(Ethernet) 이더넷은 랜에서 데이터를 주고받는 규칙이다. 데이터 링크 계층에서는 네트워크 장비 간에 신호를 주고받는 규칙을 정하는데 이것이 이더넷이다. 만약 허브를 통해 전기 신호가 전달되면 허브는 데이터가 전달되어야 하는 포트 이외에도 허브에 연결된 모든 포트에 데이터를 전송한다. 이더넷은 목적이 정보를 추가하여 목적지 이외의 허브로 수신되는 걸 방지한다. 또한 여러대의 데이터가 동시에 송출되면 충돌이 발생하는데 이더넷은 이를 데이터 보내는 시점을 늦춰 이를 방지한다. 이더넷은 CSMA/CD(스위치의 등장으로 현재는 많이 쓰이지 않는다.)라는 데이터를 늦추는 방법 사용한다. 이처럼 이더넷은 랜에서 데이터를 주고받는 규칙을 설정한다. CS:데이터를 보..

java/자바의 정석 연습문제 오답노트

[배열] 연습문제 5-5

문제: 다음은 1과 9사이의 중복되지 않은 숫자로 이루어진 3자리 숫자를 만들어내는 프로그램이다. (1)~(2)에 알맞은 코드를 넣어서 완성하시오. class Exercise5_5 { public static void main(String[] args) { int[] ballArr = {1,2,3,4,5,6,7,8,9}; int[] ball3 = new int[3]; // 배열 ballArr의 임의의 요소를 골라서 위치를 바꾼다. for(int i=0; i

java/기본문법

[보충]Iterator를 쓰는 이유

list,set,map 컬렉션은 모두 구조가 다르다. 만약 값들을 반복적으로 읽는다고 가정하면 각기 다른 명령문을 내려줘야한다. Iterator는 모든 컬렉션에 같은 명령문을 넣어 이 문제를 해결한다. HashSet 컬렉션을 써서 get()메서드로 값을 반복적으로 읽어오려한다. 하지만 HashSet에는 get()메서드가 없으므로 오류가 뜬다. 대신 Iterator를 쓰면 어떤 컬렉션이든 사용할 수 있다. 출처:자바의 정석 기초편(저자:남궁성 출판사:도우출판)

java/자바의 정석 연습문제 오답노트

[배열] 2차원 배열의 총합 / 평균 구하기

문제: 2차원 배열 arr에 담긴 모든 값의 총합과 평균을 구하는 프로그램을 완성하시오. class Exercise5_4 { public static void main(String[] args) { int[][] arr = { {5, 5, 5, 5, 5}, {10, 10, 10, 10, 10}, {20, 20, 20, 20, 20}, {30, 30, 30, 30, 30} }; int total = 0; float average = 0; System.out.println("total="+total); System.out.println("average="+average); } } 2차원 배열의 총합과 평균을 구하는 문제다. 중첩의 for문으로 arr의 값들을 표현하는데까지 생각이 갔다. 그걸 코드로 풀어보니..

java/자바의 정석 연습문제 오답노트

[제어문과 반복문]별 찍기

학습목표: 중첩 for문을 이해한다. 1. 별을 보면 횟수가 거듭될수록1.공백의 갯수는 작아진다. 2. 별의 갯수는 늘어난다는 법칙을 알 수 있다. 이 두 법칙을 코드로 옮기는 게 별을 찍는데 관건이 되겠다. 문제를 간단히 보기위해 세로를 'i'로 가로를 'j'로 놔두자. 그러면 i의 수가 증가할수록 j의 공백은 감소하고 별은 증가하는 걸 알 수 있다. 이를 코드로 나타낸다면 아래와 같다. 코드를 보면 바깥쪽 for문이 실행되면 안쪽의 for문은 조건에 따라 공백을 쓰기도 별을 찍기도 한다. 여기서 포인트는 안의 for문에서 '조건이 변하는 때'인데 조건을 보면 i의 값이 j의 값보다 커질 때 조건이 변화되는 걸 알 수 있다. i가 1일때 j는 i와 같아지는 1에서 변화가 생기고 i가 2일 때 j가 2이..

각시탈코더
'분류 전체보기' 카테고리의 글 목록 (16 Page)