<![CDATA[Latest posts for the topic "Thắc mắc về TCP/IP"]]> /hvaonline/posts/list/31.html JForum - http://www.jforum.net Thắc mắc về TCP/IP /hvaonline/posts/list/36633.html#225018 /hvaonline/posts/list/36633.html#225018 GMT Thắc mắc về TCP/IP

explorer88 wrote:
Chào các bạn. Mình thắc mắc ở chỗ: Tại transport layer, với giao thức TCP thì sử dụng connection-oriented, cả hai bên cần xây dựng một kết nối trước khi truyền data. Data, ở đây là các TCP segment sẽ được truyền đi trong kết nối đó. Nhưng mà TCP segment đó phải được đóng gói vào một IP datagram để chuyển đi, mà kết nối tại network layer thì lại là connectionless nên các ip datagram sẽ được truyền đi theo các hướng khác nhau trước khi đến đích. Vậy thì khi đó các TCP segment nằm trong IP datagram đâu có được truyền đi theo kết nối đã có ở tầng transport đâu nhỉ ? Mình nghĩ là mình không nắm vững ở chỗ nào đó nên mới thắc mắc thế này. Rất mong các bạn chỉ cho mình biết: Mình đã sai ở chỗ nào ? 
Bồ nói rõ hơn vởi đoạn màu đỏ ở trên được không? Tại sao "kết nối tại network layer lại là connectionless" là sao?]]>
/hvaonline/posts/list/36633.html#225044 /hvaonline/posts/list/36633.html#225044 GMT
Thắc mắc về TCP/IP

explorer88 wrote:
Chào các bạn. Mình thắc mắc ở chỗ: Tại transport layer, với giao thức TCP thì sử dụng connection-oriented, cả hai bên cần xây dựng một kết nối trước khi truyền data. Data, ở đây là các TCP segment sẽ được truyền đi trong kết nối đó. Nhưng mà TCP segment đó phải được đóng gói vào một IP datagram để chuyển đi, mà kết nối tại network layer thì lại là connectionless nên các ip datagram sẽ được truyền đi theo các hướng khác nhau trước khi đến đích. Vậy thì khi đó các TCP segment nằm trong IP datagram đâu có được truyền đi theo kết nối đã có ở tầng transport đâu nhỉ ? Mình nghĩ là mình không nắm vững ở chỗ nào đó nên mới thắc mắc thế này. Rất mong các bạn chỉ cho mình biết: Mình đã sai ở chỗ nào ? 
Các tầng của TCP/IP có chức năng và hoạt động độc lập với nhau. Nên ở layer 3 là connectioness chẳng liên quan gì đến việc layer 4 phải là connectioness hay connection-oriented cả. TCP dùng cơ chế SYN - ACK để thiết lập 1 comunication session trước khi truyền tin, nó chỉ xử lý ở layer 4, còn layer 3 là gì nó không quan tâm. Khi đóng gói xong nó chuyển xuống layer 3 rồi mặc kệ thôi. Ví dụ: mình gửi thư cho bạn, trước khi gửi thư mình có gọi điện thông báo cho bạn mình trước là sẽ gửi thư và bạn mình xác nhận (layer 4 - phiên làm việc được thiết lập, mình và bạn mình biết là có gửi thư cho nhau), sau đó mình bỏ thư vào hòm để chuyển đi (layer 3 - connectioness: mình không biết bao giờ thì thư đến chỗ bạn mình, cũng không biết thời điểm thư được lấy đi ...). Bạn mình khi nhận được thư -> xác nhận lại (layer 4). Không nhận được thư -> yêu cầu gửi lại (layer 4).]]>
/hvaonline/posts/list/36633.html#225051 /hvaonline/posts/list/36633.html#225051 GMT
Thắc mắc về TCP/IP

dreamcatcher wrote:

explorer88 wrote:
Chào các bạn. Mình thắc mắc ở chỗ: Tại transport layer, với giao thức TCP thì sử dụng connection-oriented, cả hai bên cần xây dựng một kết nối trước khi truyền data. Data, ở đây là các TCP segment sẽ được truyền đi trong kết nối đó. Nhưng mà TCP segment đó phải được đóng gói vào một IP datagram để chuyển đi, mà kết nối tại network layer thì lại là connectionless nên các ip datagram sẽ được truyền đi theo các hướng khác nhau trước khi đến đích. Vậy thì khi đó các TCP segment nằm trong IP datagram đâu có được truyền đi theo kết nối đã có ở tầng transport đâu nhỉ ? Mình nghĩ là mình không nắm vững ở chỗ nào đó nên mới thắc mắc thế này. Rất mong các bạn chỉ cho mình biết: Mình đã sai ở chỗ nào ? 
Các tầng của TCP/IP có chức năng và hoạt động độc lập với nhau. Nên ở layer 3 là connectioness chẳng liên quan gì đến việc layer 4 phải là connectioness hay connection-oriented cả. TCP dùng cơ chế SYN - ACK để thiết lập 1 comunication session trước khi truyền tin, nó chỉ xử lý ở layer 4, còn layer 3 là gì nó không quan tâm. Khi đóng gói xong nó chuyển xuống layer 3 rồi mặc kệ thôi. Ví dụ: mình gửi thư cho bạn, trước khi gửi thư mình có gọi điện thông báo cho bạn mình trước là sẽ gửi thư và bạn mình xác nhận (layer 4 - phiên làm việc được thiết lập, mình và bạn mình biết là có gửi thư cho nhau), sau đó mình bỏ thư vào hòm để chuyển đi (layer 3 - connectioness: mình không biết bao giờ thì thư đến chỗ bạn mình, cũng không biết thời điểm thư được lấy đi ...). Bạn mình khi nhận được thư -> xác nhận lại (layer 4). Không nhận được thư -> yêu cầu gửi lại (layer 4). 
Bạn chỉ cho mình thấy cách gói tin được xử lý tại các tầng network và transport và bạn trả lời thắc mắc của mình là do các tầng thiết kế độc lập nên việc các datagram được truyền đi theo kiểu connectionless ở dưới không ảnh hưởng gì đến connection-oriented ở trên. Dù mình vẫn chưa thoả mãn lắm với câu trả lời này nhưng cũng cảm ơn bạn nhé. Hôm qua, mình có biết thêm là connection tại transport thực chất là logical connection, không hẳn là có một kết nối định sẵn giữa hai endpoint tại transport layer. Tại sao lại phải dùng khái niệm logical connection ở đây nhỉ ? ]]>
/hvaonline/posts/list/36633.html#225061 /hvaonline/posts/list/36633.html#225061 GMT
Thắc mắc về TCP/IP

conmale wrote:

explorer88 wrote:
Chào các bạn. Mình thắc mắc ở chỗ: Tại transport layer, với giao thức TCP thì sử dụng connection-oriented, cả hai bên cần xây dựng một kết nối trước khi truyền data. Data, ở đây là các TCP segment sẽ được truyền đi trong kết nối đó. Nhưng mà TCP segment đó phải được đóng gói vào một IP datagram để chuyển đi, mà kết nối tại network layer thì lại là connectionless nên các ip datagram sẽ được truyền đi theo các hướng khác nhau trước khi đến đích. Vậy thì khi đó các TCP segment nằm trong IP datagram đâu có được truyền đi theo kết nối đã có ở tầng transport đâu nhỉ ? Mình nghĩ là mình không nắm vững ở chỗ nào đó nên mới thắc mắc thế này. Rất mong các bạn chỉ cho mình biết: Mình đã sai ở chỗ nào ? 
Bồ nói rõ hơn vởi đoạn màu đỏ ở trên được không? Tại sao "kết nối tại network layer lại là connectionless" là sao? 
Ý của em là: TCP segment được đóng gói lại trong một IP datagram mà IP datagram được truyền đi trên mạng theo truyền thông kiểu connectionless: Không có một con đường định sẵn nào cả, các IP datagram sẽ được các router forward theo các tuyến khác nhau để đến đích. Em xem trong wikipedia thấy họ cũng nói mô hình kết nối tại network layer là connectionless mà: http://en.wikipedia.org/wiki/Network_Layer Em diễn đạt có điểm nào chưa rõ ràng hay sai về mặt thuật ngữ không. Nếu có thì nhờ anh hướng dẫn để em sửa dần.]]>
/hvaonline/posts/list/36633.html#225062 /hvaonline/posts/list/36633.html#225062 GMT
Thắc mắc về TCP/IP

explorer88 wrote:
Hôm qua, mình có biết thêm là connection tại transport thực chất là logical connection, không hẳn là có một kết nối định sẵn giữa hai endpoint tại transport layer. Tại sao lại phải dùng khái niệm logical connection ở đây nhỉ ?  
Hình như bạn còn chưa phân biệt được rõ ràng vai trò của Layer Internet và Layer Transport. Thế nào gọi là kết nối định sẵn giữa hai endpoint vậy? ]]>
/hvaonline/posts/list/36633.html#225066 /hvaonline/posts/list/36633.html#225066 GMT
Thắc mắc về TCP/IP

rs wrote:

explorer88 wrote:
Hôm qua, mình có biết thêm là connection tại transport thực chất là logical connection, không hẳn là có một kết nối định sẵn giữa hai endpoint tại transport layer. Tại sao lại phải dùng khái niệm logical connection ở đây nhỉ ?  
Hình như bạn còn chưa phân biệt được rõ ràng vai trò của Layer Internet và Layer Transport. Thế nào gọi là kết nối định sẵn giữa hai endpoint vậy?  
Ý mình là kết nối tại TCP là logical connection, một kết nối tượng tưởng, mà ở đó các segment đi thẳng qua, chứ không phải đi qua nhiều con đường khác nhau giống như connectionless. Mình gọi là định sẵn vì kết nối đó phải được hình thành trước khi hai endpoint trao đổi data. Nó gần giống như khi thực hiện gọi điện thoại, cũng có một kết nối phải được định sẵn trước khi thực hiện trao đổi data nhưng khác ở chỗ là trong một cuộc gọi thì kết nối là thực (physical connection) chứ không phải là ảo (logical connection). Và thắc mắc ở đầu chủ đề dẫn mình đến thắc mắc mới là: Tại sao phải dùng khái niệm logical connection ở đây nhỉ ?]]>
/hvaonline/posts/list/36633.html#225070 /hvaonline/posts/list/36633.html#225070 GMT
Thắc mắc về TCP/IP

explorer88 wrote:
connectionless: Không có một con đường định sẵn nào cả, các IP datagram sẽ được các router forward theo các tuyến khác nhau để đến đích 
@explorer88: bạn chắc hiểu sai khái niệm connection-oriented và connectionless. Connectionless tức là một bên có thể gửi một gói thông tin đến bên kia mà không cần báo trước, và cũng không cần biết bên kia có nhận được hay không. Và ngược lại thì là connection-oriented. Còn về chuyện tại sao ở tầng IP thì là connectionless, rồi ở tầng TCP lại là connection-oriented, thì bạn cần phải xem xét về trade-off giữa efficiency và effectiveness. Cụ thể, mỗi một hoạt động trên Internet (routing, DNS, file transfer, WWW, v.v...) có thể là connectionless hoặc connection-oriented, tuỳ theo mục đích và đòi hỏi của hoạt động đó. Ở network layer hoạt động chính là IP, nên nó bắt buộc phải là connectionless. Hoạt động nào muốn sử dụng connection-oriented thì thường phải qua TCP, nếu không muốn tự quản lý connection của chính nó. Khái niệm physical connection và logical connection của bạn thực ra không có nhiều ý nghĩa, bạn cũng không cần phải quan tâm đến chúng.]]>
/hvaonline/posts/list/36633.html#225075 /hvaonline/posts/list/36633.html#225075 GMT
Thắc mắc về TCP/IP /hvaonline/posts/list/36633.html#225087 /hvaonline/posts/list/36633.html#225087 GMT Thắc mắc về TCP/IP

explorer88 wrote:

conmale wrote:

explorer88 wrote:
Chào các bạn. Mình thắc mắc ở chỗ: Tại transport layer, với giao thức TCP thì sử dụng connection-oriented, cả hai bên cần xây dựng một kết nối trước khi truyền data. Data, ở đây là các TCP segment sẽ được truyền đi trong kết nối đó. Nhưng mà TCP segment đó phải được đóng gói vào một IP datagram để chuyển đi, mà kết nối tại network layer thì lại là connectionless nên các ip datagram sẽ được truyền đi theo các hướng khác nhau trước khi đến đích. Vậy thì khi đó các TCP segment nằm trong IP datagram đâu có được truyền đi theo kết nối đã có ở tầng transport đâu nhỉ ? Mình nghĩ là mình không nắm vững ở chỗ nào đó nên mới thắc mắc thế này. Rất mong các bạn chỉ cho mình biết: Mình đã sai ở chỗ nào ? 
Bồ nói rõ hơn vởi đoạn màu đỏ ở trên được không? Tại sao "kết nối tại network layer lại là connectionless" là sao? 
Ý của em là: TCP segment được đóng gói lại trong một IP datagram mà IP datagram được truyền đi trên mạng theo truyền thông kiểu connectionless: Không có một con đường định sẵn nào cả, các IP datagram sẽ được các router forward theo các tuyến khác nhau để đến đích. Em xem trong wikipedia thấy họ cũng nói mô hình kết nối tại network layer là connectionless mà: http://en.wikipedia.org/wiki/Network_Layer Em diễn đạt có điểm nào chưa rõ ràng hay sai về mặt thuật ngữ không. Nếu có thì nhờ anh hướng dẫn để em sửa dần. 
Hì hì, một cái là tuyến (routing), một cái là nối (connecting). Sao có thể nhặp nhằng giữa "tuyến" với "nối" được em? Trên network layer, gói tin chỉ cần có dst IP, src IP là đủ vì việc packet được đưa đi (xuyên qua các routers) chỉ cần bấy nhiêu đó. Cái gì encapsulated bên trong payload của IP đó là chuyện của tầng cao hơn.]]>
/hvaonline/posts/list/36633.html#225097 /hvaonline/posts/list/36633.html#225097 GMT
Thắc mắc về TCP/IP /hvaonline/posts/list/36633.html#225157 /hvaonline/posts/list/36633.html#225157 GMT