Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Trang 1 của 2 12 CuốiCuối
Kết quả 1 đến 10 của 11
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Nếu cần đảm bảo toàn vẹn dữ liệu thì chỉ có cách dùng TCP.

    Nếu xác suất hỏng hóc rất thấp thì có thể sử dụng UDP để đạt được tốc độ cao hơn.

    Ngoài ra, vì làm việc trong mạng LAN nên có thể thử thao tác ở tầng Data link xem sao, (ý tưởng thế thôi chứ chưa thử bao giờ, nhưng nhiều khả năng là sai sót dữ liệu sẽ khá cao).

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi boss14420
    Nếu cần đảm bảo toàn vẹn dữ liệu thì chỉ có cách dùng TCP.
    Nếu xác suất hỏng hóc rất thấp thì có thể sử dụng UDP để đạt được tốc độ cao hơn.
    Ngoài ra, vì làm việc trong mạng LAN nên có thể thử thao tác ở tầng Data link xem sao, (ý tưởng thế thôi chứ chưa thử bao giờ, nhưng nhiều khả năng là sai sót dữ liệu sẽ khá cao).
    Ở đây chắc mình yêu cầu là toàn vẹn chứ còn tốc độ thì ko cần thiết lắm, miễn sao cái file đó truyền và nhận là dk, có bạn nào có ý kiến nào khác không ?

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    [LT Mạng]Nên sử dụng kỹ thuật nào để truyền và nhận file với dung lượng lớn qua mạng LAN

    Mình có bài tập xây dựng chương trình Truyền (gửi) và nhận file với dung lượng lớn qua mạng LAN viết bằng Windows Form C#, demo thì cho 2 máy kết nối bằng wifi hay Cap. Mình có tham khảo trên google thì để truyền nhận file qua mạng LAN thì có những Kỹ thuật như TCP, UDP, Socket, Filestream..v..v.. mình hơi gà, bạn nào pro Lập trình mạng cho mình biết với dạng truyền file dung lượng lớn thì nên sử dụng kỹ thuật gì.

    P/s: Nghe thầy mình nói thầy có chương trình mẫu mà có thể truyền nhận file với dung lượng >=1G.

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    TCP sẽ tự động cắt gói tin được gửi ra thành nhiều phần rồi gửi, kể cả việc có gửi được thành công đến nơi hay không TCP cũng làm cho bạn rồi. UDP thì gửi xong là xong mặc kệ file gửi đi có thành công hay không nên hiệu xuất UDP cao hơn nhưng ko an toàn.

    Tốt nhất là bạn nên tìm hiểu về Socket.

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi boss14420
    Nếu vậy thì dễ rồi: tạo một TCP Socket. Đầu tiên là gửi đi thông tin về file (tên, kích thước, ...), sau đó là gửi từng phần của file.
    Cách này là chuẩn rồi.

    Cắt file ra nhiều phần rồi gửi theo nhiều luồng khác nhau.
    Khi bên nhận đã nhận đủ thì ghép các mảnh lại thành file duy nhất.
    Bạn cần tìm hiểu cách quản lý luồng và socket

  6. #6
    Trích dẫn Gửi bởi boss14420
    Nếu vậy thì dễ rồi: tạo một TCP Socket. Đầu tiên là gửi đi thông tin về file (tên, kích thước, ...), sau đó là gửi từng phần của file.
    ủa gửi từng phần là cắt nhỏ ra gửi hả bạn ? thế thì đâu còn gọi là truyền file vs dung ưượng lớn nữa.

  7. #7
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi quangnh89
    Cách này là chuẩn rồi.
    Cắt file ra nhiều phần rồi gửi theo nhiều luồng khác nhau.
    Khi bên nhận đã nhận đủ thì ghép các mảnh lại thành file duy nhất.
    Bạn cần tìm hiểu cách quản lý luồng và socket
    bắt buộc phải cắt ra thế này hả các bạn, ko truyền dk nguyên 1 file lớn hả, giả sử là 1 file *.ISO 1G. Tiếp tục cho ý kiến nào [IMG]images/smilies/clap_grin.gif[/IMG]

  8. #8
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi faq.c
    bắt buộc phải cắt ra thế này hả các bạn, ko truyền dk nguyên 1 file lớn hả, giả sử là 1 file *.ISO 1G. Tiếp tục cho ý kiến nào [IMG]images/smilies/clap_grin.gif[/IMG]
    Bạn truyền file to cũng không sao, nhưng nếu đang truyền file to, mà bị mất kết nối, bạn sẽ tiếp tục tải lại file như thế nào?

    Làm sao để bạn chắc chắn những phần bạn đã tải là chính xác?

    Nếu truyền file lớn với chỉ 1 kết nối qua 1 socket thì thời gian truyền file của bạn là bao lâu?

  9. #9
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Vừa dạo qua trên mạng thấy có phương thức chunk gì đó để cắt nhỏ file 1 to ra để truyền, có ai rành về cái này chỉ mềnh với [IMG]images/smilies/clap_grin.gif[/IMG]

  10. #10
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Mình có tham khảo 1 số bài mẫu thì truyền dk file khá lớn(400M) nhưng mà lớn hơn thì thì thoảng báo lỗi OutOfMemoryException, nếu không sử dụng phương thức chunk thì làm sao để tránh lỗi này vì mình nghe nhiều người nói dùng chunk có thể tránh dk nó ?

 

 
Trang 1 của 2 12 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •