diff --git a/gold/link/send.go b/gold/link/send.go index 3b3030b..16596e5 100644 --- a/gold/link/send.go +++ b/gold/link/send.go @@ -96,7 +96,7 @@ func (l *Link) write(p *head.Packet, teatype uint8, additional uint16, datasz ui } if l.doublepacket { cpp := p.Copy() - _ = time.AfterFunc(time.Millisecond*(100+time.Duration(rand.Intn(50))), func() { + _ = time.AfterFunc(time.Millisecond*(10+time.Duration(rand.Intn(40))), func() { defer cpp.Put() _, _ = l.writeonce(cpp, teatype, additional, datasz, offset, istransfer, hasmore) }) diff --git a/gold/p2p/udplite/lite.go b/gold/p2p/udplite/lite.go index b9daa29..f0ab9d5 100644 --- a/gold/p2p/udplite/lite.go +++ b/gold/p2p/udplite/lite.go @@ -75,11 +75,11 @@ func listenUDPLite(network string, laddr *net.UDPAddr) (*net.UDPConn, error) { } var errsys error err = rc.Control(func(fd uintptr) { - errsys = syscall.SetsockoptInt(int(fd), SOL_UDPLITE, UDPLITE_SEND_CSCOV, head.PacketHeadLen) + errsys = syscall.SetsockoptInt(int(fd), SOL_UDPLITE, UDPLITE_SEND_CSCOV, head.PacketHeadLen+8) // for xor rand if errsys != nil { return } - errsys = syscall.SetsockoptInt(int(fd), SOL_UDPLITE, UDPLITE_RECV_CSCOV, head.PacketHeadLen) + errsys = syscall.SetsockoptInt(int(fd), SOL_UDPLITE, UDPLITE_RECV_CSCOV, head.PacketHeadLen+8) // for xor rand }) if err != nil { _ = conn.Close()